Skip to main content
Version: 2022

Move to Universal GUI

Move from Windows or Web GUI to Universal GUI

Moving from the Windows or Web GUI to the Universal GUI means moving from a 2-tier to a 3-tier architecture. This chapter describes the required knowledge to work with a 3-tier architecture, and it helps you get up to speed in applying it within the Thinkwise Platform.

What is Indicium

Moving from a 2-tier to a 3-tier architecture disconnects the front end from the databases. For Thinkwise, Indicium is the secure spider in the web between the front end and the database.

What is Indicium?

Indicium is Thinkwise's Web API that handles requests from the outside world. It facilitates all connections to a variety of data sources and exposes them to clients on location.

What is a Web API

Web APIs can be called by clients using HTTP requests. These requests are used to retrieve information from a web page while browsing on the internet. Many companies develop their own APIs. A well-known example is, retrieving an address belonging to a postal code.

A Web API, in general, does not come with a front end. Its main function is to securely provide data for executing "heavy" work, to support the client.

tip

Your application can make Indicium call external Web APIs, too. You can do this by using an HTTP Connector in a system flow or a process flow.

The Mobile and Universal GUIs communicate with Indicium through HTTP requests. For the Windows GUI, communication with Indicium is not possible.

Solving problems

Indicium offers DB logging and error logging where you can investigate unexpected behavior. To resolve a problem in Indicium, you have to be able to read HTTP requests. This is an essential skill for Thinkwise Platform developers working with web-based applications and Web APIs, such as Indicium.

To address a request to Indicium, the client builds a URL. It consists of two elements:

  • Host - Indicium's address on the Internet. The host part is static and configured once at the clients' end.
  • Path and query - What Indicium should do and additional required parameters. Indicium uses the OData standard to receive instructions from clients, defined in the path and query. An OData URL syntax is a bit similar to the SQL syntax, specifying the subject, ordering, filtering or an endpoint to execute some logic.

URI syntax diagram A URL syntax diagram

An HTTP request can contain different types of methods, like GET, or POST. You can easily execute a GET request URL in the browser's address bar. To execute more complex requests like POST requests manually, you can use a tool like Postman.

A response from Indicium comes in a JSON format, a standardized way to package data.

Communication between Universal GUI and Indicium

To get an overview of the communication between the Universal GUI and Indicium, you can use your browser's DevTools > Network tab. This tab only records requests from the moment it is opened. If you trigger a user interaction in the GUI, the requests will come into view.

To get an overview of the interaction of processes in the GUI, you can add the Redux extension to the DevTools.

Was this page helpful?