4. NOUNS NOT VERBS
GET /getAllSchedules
GET /getAllSchedulesById
POST /createSchedule
PUT /updateSchedule
GET /schedules
GET /schedules/123
POST /schedules
PUT /schedules/123
5. BE CONSISTENT
Use GET to alter data
Return 404 for empty list
Don’t use status code
Use GET to get data
Use PUT/POST to alter data
Use status code correctly
6. USE VERSIONING
Business will change
Requirements will change
Change is inevitable
/api/v1/Schedules
/api/v2/Schedules
/api/v3/Schedules/123/Person
7. KISS – KEEP IT SIMPLE, STUPID
Don’t return more than you need
Don’t use much status code (200, 201,
404, 500)
Don’t write business logic in a controller
Keep your model simple
Document your API very well