REST is a stateless, cacheable client-server communication protocol and stands for Representational State Transfer (ReST). It is an architecture style for designing networked applications that uses simple HTTP requests to make calls between machines. This approach makes it easier to have direct communication between devices, rather than implementing complex mechanisms like COBRA, SOAP or RPC. Applications that are using REST as the standard way to communicate are called RESTful applications. These applications are using HTTP requests to create, read, update and delete data (CRUD operations).