Skip to main content

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

HeaderDeğerZorunlu
AuthorizationBearer \{token\}Evet
Content-Typeapplication/jsonEvet

Path Parameters

ParametreTipZorunluAçıklama
userinteger/stringEvetKullanıcı ID veya UUID

Request Body

ParametreTipZorunluAçıklama
permission_idintegerEvet*Permission ID'si
permission_slugstringEvet*Permission slug'ı
is_activebooleanHayırPermission 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 verilir
  • is_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