Software Engineer
mediumrest-vs-graphql
What is the difference between REST and GraphQL?
Answer
REST (Representational State Transfer) and GraphQL are two different approaches to API design.
**REST:**
- **Architecture:** Resource-based endpoints (e.g., `/users/:id`).
- **Data fetching:** Multiple endpoints can cause over/under-fetching.
- **Caching:** Works well with HTTP caching.
- **Versioning:** Often via URL or headers.
**GraphQL:**
- **Architecture:** Query language + runtime with a typed schema.
- **Data fetching:** Client asks for exactly what it needs (often one endpoint).
- **Versioning:** Typically schema evolution (add fields) instead of `/v2`.
- **Caching:** Possible, but often needs client/server strategy.
**Key takeaway:** REST is great for simple, cache-friendly APIs; GraphQL shines when clients need flexible, efficient data access across many related resources.
Related Topics
APIArchitectureBackend