
Roy Fielding published the "RepresentationalStateTransfer" architecture(REST) in 2000 as part of a dissertation.
It is an object model for transferring data from machine to machine via the Internet(WorldWideWeb). The name refers to the representation of a state change through the transfer of data. REST can be used in almost any programming language. In the meantime, REST has developed into a very common interface for data transfer for web services, also often referred to as RESTApplicationProgrammingInterface(REST API). APIs are usually transition points from one software to another.

REST can be transmitted via all web-enabled transmission media, i.e. via the internet (although REST can also be used in the local network). At the beginning and end of a connection, Ethernet, WLAN or mobile radio is usually used as the transmission physics.
Topology

With the help of REST APIs, data can be exchanged very easily between a client and a web server, for example. A web server can also be located on an automation technology device and does not necessarily have to be a PC-based system. The client is a software application that addresses the web server's REST API.
REST is not fully standardized and not a complete protocol, but uses methods from HTTP(S), URI, XML, JSON.
The advantage of REST is that a large part of the infrastructure required for REST (e.g. web and application servers, HTTP-capable clients, HTML and XML parsers, security mechanisms) is already available on the WWW and many web services are REST-compliant per se. A resource can be represented using various media types, also known as resource representation.
The client/server architecture allows the server a high degree of scalability and the client a high degree of platform flexibility and portability for users.
Server and client communicate with each other statelessly, which means that the server cannot access stored data.
Clients can cache requests from the server if they have been classified accordingly (cacheable or non-cacheable). This increases the response speed for further requests.
REST is object-oriented programming. Objects are server resources that can be created or deleted. The objects are changed using different methods.
The functional scope of a REST API can vary greatly, but common HTTP(S) methods are
- GET - requests data of a specific resource from the server
- POST - transmits data to a resource on the server for processing
- PUT/PATCH - modify/update an existing resource on the server
- DELETE - deletes an existing resource on the server
Resources (objects) are addressed via a character string, the URI(UniformResourceIdentifier). This can be an address or a name (URL or URN).

To ensure transmission security, the technologies available for http, such as HTTPS with SSL/TLS encryption, are used. Access tokens are often used for authorization, which can contain security information, for example about access rights to certain resources.

To create the corresponding programming/scripting, a specific description of the REST interface of the desired server is required.
The providers often provide corresponding libraries for the programming environments to easily implement device-specific functions.

Due to the lack of standardization, there are different versions depending on the manufacturer and device. Versions that are not based on http are rather rare, and data formats other than JSON are also rare.
Remote maintenance
Modular remote maintenance and M2M router Ewon Flexy for remote maintenance and data services
Remote data collection with Ewon Talk2M
Beyond pure remote access, Talk2M offers various data services such as data collection and alarm management that enable condition monitoring and proactive maintenance of your systems.





