REST

Also known as: Representational State Transfer

framework · computer science · organizing-schema

Fielding's architectural style for distributed hypermedia systems.

Representational State Transfer is an architectural style for distributed hypermedia systems defined by Roy Fielding in his 2000 doctoral dissertation. REST imposes constraints (statelessness, uniform interface, client-server separation, layered system, cacheability, code-on-demand) that yield desirable properties for web-scale systems including scalability and evolvability. The style was derived by analyzing what made the early web successful and is now the dominant architectural pattern for web APIs, though most APIs called 'REST' violate one or more of Fielding's original constraints.

Originators

Roy Fielding high

Year / Decade

2000 high

Primary sources

Fielding, R.T. (2000). Architectural Styles and the Design of Network-based Software Architectures (PhD dissertation, UC Irvine) high

Core components

Primary use case

Designing web APIs and distributed hypermedia systems intended to scale across the open internet.

Common criticisms

Lineage

Siblings
SOAP, GraphQL, gRPC, Hexagonal Architecture