Too Long; Didn't Read
REST is a software architectural style that defines a set of rules to be used for creating web services. Interaction in REST based systems happen through internet's Hypertext Transfer Protocol (HATEOAS) There are 6 constraints that a service should follow - Uniform Interface, Stateless, Cacheable, Code on Demand, Resource-Based, Self-descriptive Messages and Code On Demand. The only optional constraint of REST architecture is code on demand. It is important to create your REST API according to industry standards which results in ease development and increase client adoption.