The core of any RESTful API is its resource structure, i.e. the URLs of the API primitives. This is an overview of some of the resources Orestes defines (others like query or settings are missing here).
The API of Orestes respects the semantics of HTTP (e.g. statelessness), as well as the constraints of the REST architectural style (e.g. "Hypertext as the engine of application state"). The following figure corresponds to this sequence of events:
- The client makes a persistence API call to receive an object
- The request is issued as an HTTP GET request
- The request passes routers, web caches and load balancers on its way through the Internet
- If none of the web caches previsouly stored the requested object, the request reaches the Orestes server
- The Orestes server asks the database for the object, using the database-specific binding