REST Services: What are They?
We are starting here a series of 3 posts about REST Services ((Representational State Transfer)
We are starting here a series of 3 posts about REST Services (Representational State Transfer)
Today, there is a large amount of information on the Internet that is increasing daily. Information grows faster than it can be visualized. The Internet no longer only contains information for humans to consult, but for automatic systems to exchange data between them. Therefore, there is a need to organize information in the cloud in such a way that programs can upload, share, search, find, and monitor information from diverse sources such as sales data, financial information, marketing campaigns, etc.
There is a need to find a way to make complex things easy. And that is the philosophy behind REST Services (Representational State Transfer), which are not a standard, but an organizational philosophy for network system architectures consisting of clients and servers.
In the world of automation, there is also a tendency to make process information available in the cloud, especially in geographically distributed environments. This may be the case for SmartCities, which must collect various measurements using sensors distributed throughout a city. Sensors typically have a concentrator with the ability to share information via Wifi or GPRS, but intelligent sensors are also emerging with the ability to communicate directly over the Internet, to share their measurements or to be configured remotely. While these sensors can communicate with simple protocols such as HTTP, they are not capable of executing custom code, so the way to share information must be defined in a very simple way and through standard protocols.
REST Services define architectural principles by which Web services focused on system resources can be defined, including how to access the states of the resources.

Representational State Transfer (REST) is gaining a very important place on the Web as a simple alternative to Web Services based on SOAP (Simple Object Access Protocol) and WSDL (Web Services Description Language), as they are easier to use because they are a model that exposes services as resources.
REST was first described in 2000 by Roy Fielding in his dissertation on architectural principles of network systems. According to Fielding’s definition:
“Representational State Transfer is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use.”
In other words, REST allows access to content on the Web represented as the state of a resource, from which it can evolve or be transferred to another resource or to another state of the resource.
A resource can represent anything that can be described by its state or content, from a company’s list of materials to the details of each of the materials on that list. A resource is a conceptual entity. Its representation is the concrete manifestation of the resource. For example, Amazon or eBay have all the items for sale as resources within their pages, that is, each object for sale can be accessed individually from a client through REST services.





