So what is REST? The acronym stands for Representational State Transfer, which defines client-server interaction in terms of state transition. Each request from the client is a transition to a new state. The response sent by a server represents the application state after the transition.
Does it sound too complicated? If you are used to a stateful client server interaction, you will find REST unconventional. REST is stateless; once you get the general idea, you will discover it is very simple. A very important thing that you have to keep in mind is that each request is self-contained and you are never constrained to execute an operations chain or to open a session before making requests. That being said, it is always possible to create a complex workflow where several requests are chained to perform a task.