CADMATIC Web API Overview

The CADMATIC Web API is a REST API that provides interfaces for seamless transferring of 3D CAD project data between a 3rd party system (ERP, PLM) and CADMATIC Plant/Outfitting (in the future, also CADMATIC Hull). Using a Web API for the data transfer makes the data more coherent across the different systems and reduces repetitive manual work, for example, by retrieving document publication files automatically. The Web API can be accessed with any software client that can make simple HTTP requests over the network, or it can be used manually via a web browser.

The Web API works independently of the Cadmatic design applications: it only interacts with the Common Object Storage (COS) databases that have been added to its configuration. You can install the Web API to any site that has a COS installation; you can connect multiple COS servers from different projects and external databases to the same Web API.

The Web API is run as a Windows service, and there can be several service instances and application versions running simultaneously. Starting the service attempts to open a session to the COS servers that have been configured for that service instance, and after the service has established the connection, other systems can start accessing the data via the API. The service runs an embedded web server that receives incoming requests and returns the requested information to the requesting party. The API does not store the state between separate requests, which simplifies communication across different integration solutions as all communication can happen in parallel.

The Web API has interfaces for the following:

  • Authorization

  • Changes

    • Get the objects that have changed in a database after a given point. This is intended for a connecting software that informs another database when COS objects have been created or updated. The connecting software does not need to remember the last state in COS, it can just ask for a list of objects that have changed since the last time it asked.

  • 3D exports and imports, in various formats.

  • Catalog parts & part sizes

    • You can update part attribute data, such as the material number, from another system to Cadmatic applications.

  • COS objects

    • Read the attributes and properties of any COS objects using their OID.

    • Read references to COS objects.

  • Document publication files

    • When the design documents are ready, you can fetch the final documents to the project's repository using CADMATIC Web API.

  • Objects with a position ID and attributes

    • You can create, for example, equipment, valves, instruments and their attribute data from an ERP or PLM before starting the actual design work in Cadmatic applications. The designer can then use the ready-made objects in the 3D model or P&I diagram.

    • Users can also link the object from, for example, PLM or ERP to the instance of the object in Cadmatic applications.

  • Equipment GDL, Structural GDL, Parametric models

    • Read, create, modify, or import GDL for equipment and structurals.

    • Read and modify attributes of parametric models for equipment and structural GDLs.

  • EDM object data

    • Bring external data management (EDM) object data to the CADMATIC 3D model or the CADMATIC piping and instrumentation (P&I) diagram.

  • EPD object data

    • Bring external P&ID data to the CADMATIC 3D model.

  • Groups

    • Get a list of groups or the properties of a group.

  • Plant Modeller

    • Use model queries to get information from the 3D model objects of a Plant Modeller project.

  • Servers

    • Get information from COS servers.

  • Specifications

    • List piping, cable tray, and ducting specifications, along with the parts belonging to each specification.

  • Status

    • Get the status of connectors.

  • Systems and pipelines

    • List all systems and pipelines