apisBeginner
RE
REST API
Created by: Roy Fielding (UC Irvine dissertation) (2000)
Representational State Transfer: stateless web architectural style over HTTP.
#Protocol#HTTP#CRUD#Web API
Technical Specifications & Execution Parameters
PARADIGMStateless Resource-Oriented Architecture
What is REST API?
Formulated by Roy Fielding in his 2000 doctoral dissertation, REST is an architectural style for distributed hypermedia systems. It relies on standard stateless HTTP methods (GET, POST, PUT, PATCH, DELETE), uniform resource identifiers (URIs), and standard status codes.
Common Real-World Use Cases
- Public developer APIs (GitHub, Stripe, Twilio)
- Standard client-server web and mobile backends
- Microservices communication over HTTP/JSON
Core Architectural Features
Statelessness: every request carries complete context
Standard HTTP verbs mapping to CRUD semantics
Native HTTP caching headers (Cache-Control, ETag)
Decoupled client and server lifecycles
Syntactic & Architectural Examples
RESTful HTTP Resource
http
GET /api/v1/languages/javascript HTTP/1.1
Host: api.emme.edu
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Cache-Control: max-age=3600
{ "id": "javascript", "name": "JavaScript", "version": "ES2024" }Explanation: Shows HTTP resource negotiation and status codes.
Key Strengths
- +Universal support in every browser and programming language
- +Native integration with CDN edge caches and proxies
- +Human-readable endpoints and JSON payloads
Limitations & Constraints
- -Over-fetching unwanted payload fields
- -N+1 network waterfall round-trips for nested resources
Research Standards & Sources
Last researched: 2026-09-04
Verified primary and official documentation sources:
Standards SpecificationArchitectural Styles and Network-based Software Architectures (Roy Fielding)