REST (Representational State Transfer) is an architectural style for designing networked applications. It defines a set of principles and constraints that enable the development of scalable and efficient web services. A REST API (Application Programming Interface) is an implementation of a web service that adheres to the principles of REST.
RESTful APIs are widely used for building web services and are commonly used in client-server communication over HTTP. They are platform-independent, language-agnostic, and can be consumed by various clients, including web browsers, mobile apps, or other servers.
Web services that use REST architecture are called RESTful
services.
▪ RESTful systems communicates over HTTP protocol with HTTP
methods used by Web Browsers to transfer pages.
▪ Richardson Maturity Model
Leonard Richardson proposed the Richardson Maturity Model for
web APIs:
▪ Level 0: Define one URI, and all operations are POST requests to
this URI.
▪ Level 1: Create separate URIs for individual resources.
▪ Level 2: Use HTTP methods to define operations on resources.
▪ Level 3: Use hypermedia