REST interface in Industrial IoT (use-cases and limits)

Content

The world of Industrial IoT (IIoT) is significantly influenced by advancing digitalization and the increasing connectivity of OT and IT. In this context, the REST interface, also known as the RESTful interface, plays a crucial role. As an architectural style, REST offers an efficient way to develop web services and APIs. This article highlights the importance of the REST interface in Industrial IoT, the advantages, use-cases and limitations of the standard.

 

REST and API-based communication

API-based communication describes the exchange of data between software applications via programming interfaces (APIs). APIs define how different software components can interact with each other. They include the definition of the structure of requests, accepted data formats and the type of return values. This definition facilitates integration between different systems and is particularly useful for distributed systems, cloud services and web applications.

REST interface and HTTP methods

One example of API-based communication is the REST interface (Representational State Transfer). REST offers a standardized approach for the development of APIs and is based on the principle of statelessness. This means that every request to the server is handled independently of previous requests. HTTP methods such as GET, POST, PUT and DELETE are used to exchange resources between client and server. Resources are identified by URIs (Uniform Resource Identifiers).

 

Advantages of REST in the context of Industrial IoT

REST has become very popular in an industrial context due to the following advantages:

  • Simplicity and flexibility: REST uses standard HTTP methods and is therefore easy to understand and implement. It enables flexible communication between different systems and platforms.
  • Lightweight: Since REST is stateless and uses simple text messages for communication, it is resource-saving and efficient in data transmission.
  • Scalability: REST is highly scalable. This feature makes REST ideal for large, distributed systems, as is often the case in the context of Industrial IoT.

 

Use-cases of the REST interface in Industrial IoT

In the context of Industrial IoT (IIoT), the REST interface has become very popular due to its simplicity, flexibility, light weight and scalability. REST is the standard for API-based communication, which enables the simple integration of various IT systems and applications. REST APIs are often used for remote monitoring of production facilities, for the collection and distribution of operational data and for IT to IT integration of enterprise and production systems (e.g. ERP, MES).

 

Limits of REST and API-based communication

The REST interface reaches its limits in many OT/IT integration scenarios. Especially in use-cases that have specific requirements, such as:

  1. Real-time requirements: REST API is designed for synchronous communication. This means that the client must wait for a request until it receives a response from the server. In real-time applications where fast data transfer and responses are required, this synchronous nature can lead to delays
  2. Bidirectional communication: REST API is unidirectional by default, with the client initiating requests and the server responding to them. In cases where bi-directional communication is required, for example for sending commands to IoT devices or for a constant update of status information.
  3. Persistent connections: REST is stateless. This means that each request and response cycle is independent of each other. In environments where persistent connections are required for constant monitoring and control of devices, these constant re-logins and authentications can lead to increased overhead.
  4. Efficient resource utilization: REST API can be inefficient when it comes to bandwidth usage. Adding headers to each request can lead to increased network load. In applications where efficient use of resources and minimization of traffic is critical, alternative protocols may be preferred.
  5. Availability in the event of network failures: As REST is not designed for persistent connections, there may be difficulties in restoring connections and maintaining consistency between OT and IT systems in the event of network failures.

 

Alternatives to API-based communication

In use-cases with the above-mentioned requirements, alternatives to API-based communication are preferable. For example:

  1. Messaging protocols: Instead of APIs, systems can also use messaging protocols such as message queues or publish-subscribe systems. These enable asynchronous communication between applications.
  2. Webhooks: Webhooks are HTTP callbacks in which an application automatically receives notifications or data from another application when a certain event occurs.
  3. File transfer: Applications can share data by exchanging files. This can be done via FTP, SFTP or other file transfer protocols.
  4. Direct socket connections: Applications can also communicate with each other directly via network sockets, establishing a direct connection for data exchange.

 

Webhook vs. REST API

Webhooks are notifications or HTTP post messages that are automatically sent by a web service to inform other services about certain events without them having to actively ask for them. Webhooks are used as an alternative to REST APIs (Representational State Transfer APIs) for communication between software components. The main differences between the two approaches are:
Difference between webhook and REST API simply explained

 

  1. Triggering of actions:
    • REST-API: In a REST API, the client initiates the request to the server (request) to retrieve, create, update or delete data. The server responds to this request (response).
    • Webhook: In a webhook, the server (the sending application) initiates the communication process by sending data to previously registered endpoints. This happens when a certain event occurs.
  2. Direction of communication:
    • REST-API: Communication takes place at the request of the client. The client sends requests to the server and the server responds with the requested data.
    • Webhook: Communication takes place in real time and is initiated by the server. The server sends data to previously registered end points (webhook URLs) when a relevant event occurs.
  3. Asynchronism:
    • REST-API: Communication is synchronised. The client sends a request and waits for an immediate response from the server.
    • Webhook: Communication can be asynchronous. The server sends data to the webhook endpoint and the receiving application processes it regardless of when it is sent.
  4. Use-Cases:
    • REST-API: Suitable for use-cases in which the client must actively request information or trigger actions.
    • Webhook: Suitable for real-time applications and notifications where the server is to inform other applications about events.
In many cases, REST APIs and webhooks are used in parallel to create a comprehensive communication structure between different applications. An example of this would be the use of a REST API for general data queries and the implementation of webhooks for real-time notifications of important events.

 

i-flow and REST – Seamless Integration in the Industrial IoT

The combination of i-flow and REST offers a powerful solution for the data infrastructure in the factory. i-flow can serve as an interface to harmonize heterogeneous data from production systems and make it available to IT systems via REST APIs. This enables the seamless integration of production and company data, which helps to increase efficiency and improve the traceability of product and process data. REST ensures flexible and efficient data transfer.

About i-flow: i-flow is an industrial software company based in southern Germany. We offer manufacturers the world’s most intuitive software to connect factories at scale. Over 400 million data operations daily in production-critical environments not only demonstrate the scalability of the software, but also the deep trust our customers place in i-flow. Our success is based on close collaboration with customers and partners worldwide, including renowned Fortune 500 companies and industry leaders like Bosch.

Try it out now - free trial version

Experience the unlimited possibilities that i-flow offers by taking a test for yourself. Test now for 30 days free of charge on your systems.

Your question has not been answered? Contact us.

Your Contact:

Marieke Severiens (i-flow GmbH)
content@i-flow.io