Representational State Transfer (REST) is an architectural style or design principle that can be applied to implement RESTful services. REST ensures that the communication between clients and services is improved by having a limited number of operations. REST helps you organize these communications between independent systems in a simple way.
In REST, each resource is identified by its own Universal Resource Identifier (URI). It uses HTTP under the hood and utilizes HTTP verbs, such as GET, POST, PUT, and DELETE, to control or access the resources.
RESTful web services are stateless in nature and are easy to scale. They work under the HTTP protocol and can be accessed from any device that supports HTTP. A client need not worry about anything other than the data format: