Kullanıcıya Permission Ata
Kullanıcıya permission atar veya reddeder.
Endpoint
POST /api/v1/users/\{user\}/permissions
Authentication
Bu endpoint authentication gerektirir.
Header: Authorization: Bearer \{token\}
Permission
users.permissions.assign- Kullanıcıya permission atama
Request
Headers
| Header | Değer | Zorunlu |
|---|---|---|
Authorization | Bearer \{token\} | Evet |
Content-Type | application/json | Evet |
Path Parameters
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
user | integer/string | Evet | Kullanıcı ID veya UUID |
Request Body
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
permission_id | integer | Evet* | Permission ID'si |
permission_slug | string | Evet* | Permission slug'ı |
is_active | boolean | Hayır | Permission ver/kaldır (true: ver, false: reddet, varsayılan: true) |
* permission_id veya permission_slug'dan biri zorunludur.
Example Request
{
"permission_id": 5,
"is_active": true
}
Response
Success Response (201 Created)
{
"message": "Permission kullanıcıya başarıyla atandı",
"user": {
"id": 1,
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"email": "user@example.com",
"permissions": [
{
"id": 5,
"name": "İçerik Yönetimi",
"slug": "content.manage"
}
]
}
}
Error Responses
403 Forbidden
{
"message": "Forbidden"
}
403 Forbidden (Sistem Rolleri)
{
"message": "Sistem rolüne sahip kullanıcılardan (system.toor, server.root) permission kaldırılamaz"
}
Code Examples
cURL
curl -X POST https://api.example.com/api/v1/users/550e8400-e29b-41d4-a716-446655440000/permissions \
-H "Authorization: Bearer \{token\}" \
-H "Content-Type: application/json" \
-d '{
"permission_id": 5,
"is_active": true
}'
Notes
is_active=true: Permission kullanıcıya veriliris_active=false: Permission kullanıcıdan reddedilir (sistem rolleri için kaldırılamaz)- Sistem rolüne sahip kullanıcılardan permission kaldırılamaz
Related Endpoints
- Kullanıcı Permission Listesi - Kullanıcının permission'larını listele
- Kullanıcı Permission Güncelle - Kullanıcı permission güncelleme