API je zmluva medzi vaším backendom a klientmi. Dobre navrhnuté API šetrí čas vývojárom a znižuje počet chýb.
Základné princípy
Používajte správne HTTP metódy
- GET - čítanie dát (idempotentné)
- POST - vytváranie nových zdrojov
- PUT - nahradenie celého zdroja
- PATCH - čiastočná aktualizácia
- DELETE - mazanie
Konzistentné pomenovanie
GET /users # zoznam používateľov
GET /users/123 # konkrétny používateľ
POST /users # vytvorenie používateľa
PATCH /users/123 # aktualizácia používateľa
DELETE /users/123 # zmazanie používateľa
Správne HTTP status kódy
- 200 - OK
- 201 - Created
- 204 - No Content
- 400 - Bad Request
- 401 - Unauthorized
- 403 - Forbidden
- 404 - Not Found
- 500 - Internal Server Error
Verzia API
Vždy verzujte svoje API. Zmeny môžu pokaziť existujúcich klientov.
GET /api/v1/users
GET /api/v2/users
Pagination
Pre veľké datasety je stránkovanie nevyhnutné:
{
"data": [...],
"meta": {
"page": 1,
"per_page": 20,
"total": 150,
"total_pages": 8
},
"links": {
"next": "/api/users?page=2",
"prev": null
}
}
Filtrovanie a sorting
GET /api/users?status=active&sort=-created_at
GET /api/products?category=electronics&min_price=100
Error handling
Konzistentný formát chýb:
{
"error": {
"code": "VALIDATION_ERROR",
"message": "Validation failed",
"details": [
{
"field": "email",
"message": "Invalid email format"
}
]
}
}
Rate limiting
Chráňte API pred preťažením:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1640995200
Záver
Dobré API je intuitívne, konzistentné a dobre zdokumentované. Investujte čas do návrhu - vaši klienti vám poďakujú.