REST
/rɛst/ · Abbreviation · Noun · Development · Origin: 2000
Definitions
REST, or Representational State Transfer, is an architectural style for designing networked applications that use HTTP as the communication protocol. Defined by Roy Fielding in his 2000 doctoral dissertation, REST is based on a set of constraints: client-server separation, statelessness (each request contains all the information needed to process it), cacheability, a uniform interface, and a layered system. RESTful APIs expose resources (such as users, products, or orders) as URLs and use standard HTTP methods to operate on them: GET to read, POST to create, PUT to update, DELETE to remove. Resources are typically represented as JSON, though XML and other formats are also valid. REST's simplicity and alignment with HTTP made it the dominant API style for web services, replacing SOAP in most use cases. Well-designed REST APIs are intuitive, consistent, and follow conventions like plural nouns for collection endpoints, proper use of HTTP status codes, and HATEOAS (Hypermedia as the Engine of Application State) for discoverability, though few APIs fully implement HATEOAS in practice.
In plain English: A way of designing web APIs that uses standard web addresses (URLs) and methods to access and change data, like a library where each book has a unique address on a shelf.
Etymology
- 2000
- Roy Fielding publishes his PhD dissertation at UC Irvine, defining Representational State Transfer (REST) as an architectural style.
- 2005
- Web 2.0 companies adopt RESTful APIs over SOAP/XML-RPC. REST becomes the dominant web API paradigm.
- 2015
- Facebook releases GraphQL as an alternative to REST, prompting debate about API design trade-offs.
- 2020s
- REST remains the most widely used API style. OpenAPI (Swagger) standardizes REST API documentation and code generation.
Origin Story
The PhD Thesis That Redesigned the Web
REST, standing for Representational State Transfer, was defined by Roy Fielding in his 2000 doctoral dissertation at the University of California, Irvine. Fielding was not a typical PhD student: he was already one of the principal authors of the HTTP specification and a co-founder of the Apache HTTP Server project. His dissertation analyzed the architectural principles that made the World Wide Web successful and distilled them into a formal architectural style. REST describes a set of constraints for building distributed systems: client-server separation, statelessness, cacheability, a uniform interface, and a layered system. Resources are identified by URIs, and clients interact with them through standard HTTP methods (GET, POST, PUT, DELETE). The brilliance of REST was that it described what the web already did well, rather than inventing something new. But by making those principles explicit, Fielding gave developers a vocabulary and framework for designing web services. REST APIs gradually replaced heavier alternatives like SOAP and XML-RPC through the 2000s, and by the 2010s, REST had become the dominant architectural style for web APIs. Companies like Twitter, GitHub, and Stripe built influential REST APIs that became models for the industry.
Coined by: Roy Fielding
Context: UC Irvine doctoral dissertation, 2000
Fun fact: Roy Fielding's dissertation has been cited over 15,000 times, making it one of the most referenced PhD theses in computer science history. He wrote it while simultaneously working full-time at a startup.