api-design-patterns
Installation
SKILL.md
API Design Patterns
Resource Naming
- Use plural nouns:
/users,/orders,/products - Nest for relationships:
/users/{id}/orders - Max nesting depth: 2 levels. Beyond that, use query params or top-level resources
- Use kebab-case:
/user-profiles, not/userProfiles - Never put verbs in URLs:
/users/{id}/activateis wrong, usePOST /users/{id}/activation
HTTP Methods
| Method | Purpose | Idempotent | Request Body | Success Code |
|---|---|---|---|---|
| GET | Read resource(s) | Yes | No | 200 |
| POST | Create resource | No | Yes | 201 |
| PUT | Full replace | Yes | Yes | 200 |
| PATCH | Partial update | No | Yes | 200 |
| DELETE | Remove resource | Yes | No | 204 |