📐 REST = Architectural Style for APIs
REST APIs are everywhere. Understand REST principles — resources, HTTP methods, status codes.
📝 REST Principles
1. Resources (nouns, not verbs) /api/users (users collection) /api/users/1 (single user) /api/orders (orders collection) /api/orders/123 (single order) 2. HTTP Methods GET → Read POST → Create PUT → Update (full) PATCH → Update (partial) DELETE → Delete 3. Status Codes 200 OK → Success 201 Created → Created 400 Bad Request → Invalid request 401 Unauthorized → Need auth 404 Not Found → Resource not found 500 Server Error → Server error 4. Stateless Each request contains all information needed 5. Representation JSON, XML, HTML — choose format
🎯 REST API Example
// Get all users
GET /api/users
Response: 200 OK [{ "id": 1, "name": "Alice" }]
// Get single user
GET /api/users/1
Response: 200 OK { "id": 1, "name": "Alice" }
// Create user
POST /api/users
Request: { "name": "Bob", "email": "bob@example.com" }
Response: 201 Created { "id": 2, "name": "Bob" }
// Update user
PUT /api/users/2
Request: { "name": "Robert" }
Response: 200 OK { "id": 2, "name": "Robert" }
// Delete user
DELETE /api/users/2
Response: 204 No Content
💡 Best Practices
- Use nouns for resource names
- Use plural forms (/users, /orders)
- Use nested resources (/users/1/orders)
- Use query parameters for filtering (/users?active=true)
- Version your API (/api/v1/users)
“REST principles guide API design. Resources, methods, status codes. Essential for API development.”
