Permissions List Endpoint
Bu sayfa, permissions kayıtlarının listelenmesi için düşünülen endpoint sözleşmesini tanımlar.
Amaç
Bu endpointin amacı, admin yüzünde permissions kayıtlarını filtrelenebilir ve sayfalanabilir şekilde listelemektir.
Önerilen Route
GET /v1/admin/permissions
Auth Gereksinimi
- admin auth zorunlu
- JWT doğrulama zorunlu
- session/auth context doğrulama zorunlu
- detaylı rol/yetki seviyesi daha sonra netleştirilecektir
Query Parametreleri
| Alan | Zorunlu | Açıklama |
|---|---|---|
limit | Hayır | Sayfa boyutu, varsayılan 50, max 200 |
cursor | Hayır | Cursor-based pagination için imleç |
q | Hayır | Permission code/name araması |
is_active | Hayır | Aktif/pasif filtre |
sort | Hayır | Whitelist alanlarla sıralama |
Veri Kaynağı
Temel veri kaynağı:
permissions
Read kuralı:
- önce ilgili Redis cache/projection kontrol edilir
- cache yoksa veya stale ise DB fallback yapılır
- DB sonucu ile Redis cache yeniden oluşturulur veya güncellenir
Örnek Response
{
"ok": true,
"data": {
"items": [
{
"id": 11,
"code": "reports.view",
"name": "Reports View",
"is_active": true,
"created_at": "2026-04-20T06:00:00Z",
"updated_at": "2026-04-20T06:00:00Z"
}
],
"pagination": {
"next_cursor": "cur_abc123",
"limit": 20,
"has_more": true
}
},
"error": null,
"meta": {
"request_id": "req_123",
"timestamp": "2026-04-20T06:00:00Z"
}
}
Hata Modeli
| Durum | HTTP | error.code |
|---|---|---|
| Yetkisiz erişim | 401 | UNAUTHORIZED |
| Yetki yok | 403 | FORBIDDEN |
| Geçersiz query | 400 | VALIDATION_ERROR |
| İç hata | 500 | INTERNAL_ERROR |