The Representational State Transfer (REST ) is an architectural style for distributed systems. REST focuses on the nature and state of an applications ' data and is sometimes also referred to as RESTful , REST -style or REST -compliant application architecture. It allows requesting systems (clients) to access and manipulate data on a RESTful application server.
A key aspect of REST is the abstraction of data to resources and representations. Any information that can be named can be a resource: a document or image, a temporal service (e.g. "today's price of a share at New York Stock Exchange"), a collection of other resources, a non-virtual object (e.g. a person), and so on. A representation captures the current or requested state of a resource.
The different networked systems exchange resource representations with each other. For this purpose, every resource is uniquely addressable using a uniform and minimal set of commands and identifiers. This happens in a stateless client/server protocol. For example, by using HTTP commands as GET, POST, PUT, or DELETE against a REST API .