There is no exact definition of the REST protocol. It stands for Representational state transfer, which probably does not mean anything to someone who has never heard of it. When we program the REST API, we use the HTTP(S) protocol. We send simple requests to the server, and we get simple answers that we program. This way, the client of the web server is also a program (by the way, the browser is also a program) that consumes the response from the server. The format of the response, therefore, is not HTML formatted using CSS and enriched by client-side functions by JavaScript, but rather some data descriptive format such as JSON. REST does not set restrictions on the actual format, but these days, JSON is the most widely used format.
The wiki page that describes REST is available at https://en.wikipedia.org/wiki/Representational_state_transfer.
REST interfaces are usually...