نقاط نهاية المشرفين تحت /api/admin/. تتطلب دور المشرف العام.
نظرة عامة
| نقطة النهاية | الطريقة | الوصف |
|---|---|---|
/api/admin/users | GET | عرض جميع المستخدمين |
/api/admin/users/:id/status | PUT | تفعيل أو تعطيل مستخدم |
نقاط النهاية
عرض جميع المستخدمين
استرجاع قائمة بجميع المستخدمين المُسجَّلين.
GET /api/admin/users
الرؤوس: Authorization: Bearer <accessToken>
الدور المطلوب: مشرف عام
الاستجابة (200):
{
"users": [
{
"id": "uuid",
"email": "user@example.com",
"name": "John Doe",
"avatar": "https://...",
"role": "user",
"provider": "email",
"isActive": true,
"createdAt": "2025-01-15T10:30:00Z"
},
{
"id": "uuid-2",
"email": "admin@example.com",
"name": "Admin User",
"role": "admin",
"provider": "email",
"isActive": true,
"createdAt": "2025-01-10T08:00:00Z"
}
]
}تحديث حالة المستخدم
تفعيل أو تعطيل حساب مستخدم. لا يمكن للمستخدمين المُعطَّلين تسجيل الدخول.
PUT /api/admin/users/:id/status
الرؤوس: Authorization: Bearer <accessToken>
الدور المطلوب: مشرف عام
معاملات URL:
| المعامل | الوصف |
|---|---|
id | UUID المستخدم |
نص الطلب:
{
"isActive": false
}الاستجابة (200):
{
"message": "user status updated",
"user": {
"id": "uuid",
"email": "user@example.com",
"isActive": false
}
}أدوار المستخدمين
| الدور | الوصف | الصلاحيات |
|---|---|---|
guest | مستخدم مؤقت | الانضمام إلى الغرف فقط |
user | مستخدم عادي | إنشاء/الانضمام إلى الغرف، إدارة الملف الشخصي |
admin | مشرف عام | جميع صلاحيات المستخدم + إدارة المستخدمين، عرض جميع الغرف |
إنشاء مشرف
يتم إنشاء المستخدمين المشرفين عبر سطر الأوامر:
# Create a user
bedrud user create --email "admin@example.com" --password "securepassword" --name "Admin"
# Promote to admin
bedrud user promote --email "admin@example.com"لا توجد نقطة نهاية API لترقية المستخدمين - وهذا متعمد لأسباب أمنية.
استجابات الخطأ
{
"error": "forbidden"
}| الحالة | المعنى |
|---|---|
| 401 | غير مُصدَّق |
| 403 | ليس مشرفًا عامًا |
| 404 | المستخدم غير موجود |
| 500 | خطأ داخلي في الخادم |
انظر أيضًا
- معالجات API والتوجيه - كيفية تنفيذ مسارات المشرفين
- واجهة برمجة الغرف - نقاط نهاية إدارة الغرف