REST (Representational State Transfer) is an architectural style used for designing networked applications. It relies on a stateless, client-server, cacheable communications protocol — the HTTP protocol. RESTful systems are characterized by how they are stateless and separate the concerns of client and server. It’s like using a waiter in a restaurant to order your meal; the waiter (the client) makes a request, and the kitchen (the server) prepares the meal, with the waiter unaware of how the kitchen operates internally and the kitchen not needing to keep a constant track of the waiter’s every move.