REST

REST, Representational State Transfer, is an architectural style for implementing distributed hypermedia systems.

TPM REST API implements the REST architectural style that comprises of the following:

To qualify as a REST architectural style, TPM REST API needs to satisfy the set of REST architectural constraints which are applied to the elements within its architecture. Such elements are referred to as the REST architectural elements. After you have understood how the elements work together under the constraints, then you virtualize the data-flowing path in TPM REST API through the REST architectural views.

Note: For more information regarding the REST architectural style, see Architectural Styles and the Design of Network-based Software Architectures.

REST Architectural Constraints

REST architectural constraints are as the following:

  1. Client-Server
  2. Stateless
  3. Cache
  4. Uniform Interface
  5. Layered System
  6. Code-On-Demand

REST Architectural Elements

REST architectural elements are as the following:
  • Data Elements, which include resource, resource identifier, representation, representation metadata, resource metadata, and control data.
  • Connectors, which include client, server, cache, resolver, and tunnel.
  • Components, which include origin server, gateway, proxy, and user agent.

REST Architectural Views

There are three REST Architectural Views:
  • Process View
  • Connector View
  • Data View