Skip to main content

REST 101

REST, pseudo acronym for REpresentational State Transfer, is an architectural style for designing APIs.

REST APIs are resource based. Resources are generally the nouns in the domain that the API needs to expose to the outside world.


In REST APIs, a representation of the resource is transferred between the server and the client. Representation is a subset of the resource state and it hides the internal persistence logic of the resource state. A resource can have more than one representation.

Six constraints of REST#

  • Uniform Interface
  • Stateless
  • Cacheable
  • Client-Server
  • Layered System
  • Code on Demand