Role & Permissions
This section covers the API endpoints for managing roles and permissions in the admin panel.
List Roles
GET /v1/admin/roles
Returns a paginated list of all roles.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
search_text | string | Search roles by name |
sort | string | Sort direction (asc/desc). Defaults to desc |
orderBy | string | Sort field. Defaults to created_at |
per_page | integer | Number of items per page. Defaults to 10 |
list | boolean | If true, returns a simplified list of roles |
Response
{
"success": true,
"message": "تم جلب البيانات بنجاح.",
"data": {
"current_page": 1,
"first_page_url": "http://192.168.0.139:8080/v1/admin/roles?page=1",
"from": 1,
"last_page": 2,
"last_page_url": "http://192.168.0.139:8080/v1/admin/roles?page=2",
"links": [
{
"url": null,
"label": "« السابق",
"active": false
},
{
"url": "http://192.168.0.139:8080/v1/admin/roles?page=1",
"label": "1",
"active": true
},
{
"url": "http://192.168.0.139:8080/v1/admin/roles?page=2",
"label": "2",
"active": false
},
{
"url": "http://192.168.0.139:8080/v1/admin/roles?page=2",
"label": "التالي »",
"active": false
}
],
"next_page_url": "http://192.168.0.139:8080/v1/admin/roles?page=2",
"path": "http://192.168.0.139:8080/v1/admin/roles",
"per_page": 10,
"prev_page_url": null,
"to": 10,
"total": 13,
"roles": [
{
"id": 13,
"name": "role_new",
"permissions_count": 0
},
{
"id": 12,
"name": "fffff",
"permissions_count": 0
},
{
"id": 11,
"name": "roleorrole",
"permissions_count": 0
},
{
"id": 10,
"name": "fgdfgdwddss",
"permissions_count": 0
},
{
"id": 9,
"name": "student_admin",
"permissions_count": 3
},
{
"id": 7,
"name": "customer",
"permissions_count": 0
},
{
"id": 8,
"name": "affiliate_marketer",
"permissions_count": 0
},
{
"id": 6,
"name": "support_m",
"permissions_count": 5
},
{
"id": 2,
"name": "accounting",
"permissions_count": 8
},
{
"id": 5,
"name": "support",
"permissions_count": 10
}
]
},
"status_code": 200
}
Get Role
GET /v1/admin/roles/{id}
Retrieve details of a specific role including its permissions.
Response
{
"success": true,
"message": "تم حفظ البيانات بنجاح.",
"data": {
"id": 13,
"name": "role_new",
"permissions": {
"المستخدمين": [
{
"id": 1,
"name": "ban user from entering system _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "حظر مستخدم من دخول النظام",
"full_name": "ban user from entering system _user_collection",
"is_active": false
},
{
"id": 2,
"name": "view user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "عرض المستخدمين",
"full_name": "view user _user_collection",
"is_active": false
},
{
"id": 3,
"name": "control user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "إضافة وتعديل وحذف المستخدمين",
"full_name": "control user _user_collection",
"is_active": false
}
],
"العملاء": [
{
"id": 4,
"name": "ban customer from commenting _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "حظر العملاء من التعليق",
"full_name": "ban customer from commenting _customer_collection",
"is_active": false
},
{
"id": 5,
"name": "view customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "عرض العملاء",
"full_name": "view customer _customer_collection",
"is_active": false
},
{
"id": 6,
"name": "control customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "إضافة وتعديل وحذف العملاء",
"full_name": "control customer _customer_collection",
"is_active": false
}
],
"الأوسمة و التصنيفات": [
{
"id": 7,
"name": "view tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "عرض الأوسمة و التصنيفات",
"full_name": "view tag category _category_collection",
"is_active": false
},
{
"id": 8,
"name": "control tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "إضافة وتعديل وحذف الأوسمة و التصنيفات",
"full_name": "control tag category _category_collection",
"is_active": false
}
],
"المواد و الباقات و الكتب الإلكترونية": [
{
"id": 9,
"name": "view course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "عرض المواد والباقات و الكتب الإلكترونية",
"full_name": "view course bundle online_book _online_book_collection",
"is_active": false
},
{
"id": 10,
"name": "control course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "إضافة وتعديل وحذف المواد والباقات و الكتب الإلكترونية",
"full_name": "control course bundle online_book _online_book_collection",
"is_active": false
}
],
"المقالات و الإصدارات": [
{
"id": 11,
"name": "view article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "عرض المقالات الإصدارات",
"full_name": "view article publication _publication_collection",
"is_active": false
},
{
"id": 12,
"name": "control article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "إضافة وتعديل وحذف المقالات و الإصدارات",
"full_name": "control article publication _publication_collection",
"is_active": false
}
],
"التقييمات و التفضيلات و التعليقات": [
{
"id": 13,
"name": "view rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "عرض التقييمات والمفضلات و التعليقات",
"full_name": "view rate cart comment _comment_collection",
"is_active": false
},
{
"id": 14,
"name": "control rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "قبول وحظر وحذف التقييمات و التعليقات",
"full_name": "control rate cart comment _comment_collection",
"is_active": false
},
{
"id": 15,
"name": "reply rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "الرد على تقييمات و تعليقات العملاء",
"full_name": "reply rate cart comment _comment_collection",
"is_active": false
}
],
},
"permissions_ids": []
},
"status_code": 200
}
Create Role
POST /v1/admin/roles
Create a new role.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Role name (3-32 chars, lowercase with underscores only) |
permissions | array | No | Array of permission IDs |
permissions.* | string | Yes (if permissions provided) | Permission UUID |
Response
{
"success": true,
"message": "تم حفظ البيانات بنجاح.",
"data": {
"id": 13,
"name": "role_new",
"permissions": {
"المستخدمين": [
{
"id": 1,
"name": "ban user from entering system _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "حظر مستخدم من دخول النظام",
"full_name": "ban user from entering system _user_collection",
"is_active": false
},
{
"id": 2,
"name": "view user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "عرض المستخدمين",
"full_name": "view user _user_collection",
"is_active": false
},
{
"id": 3,
"name": "control user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "إضافة وتعديل وحذف المستخدمين",
"full_name": "control user _user_collection",
"is_active": false
}
],
"العملاء": [
{
"id": 4,
"name": "ban customer from commenting _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "حظر العملاء من التعليق",
"full_name": "ban customer from commenting _customer_collection",
"is_active": false
},
{
"id": 5,
"name": "view customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "عرض العملاء",
"full_name": "view customer _customer_collection",
"is_active": false
},
{
"id": 6,
"name": "control customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "إضافة وتعديل وحذف العملاء",
"full_name": "control customer _customer_collection",
"is_active": false
}
],
"الأوسمة و التصنيفات": [
{
"id": 7,
"name": "view tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "عرض الأوسمة و التصنيفات",
"full_name": "view tag category _category_collection",
"is_active": false
},
{
"id": 8,
"name": "control tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "إضافة وتعديل وحذف الأوسمة و التصنيفات",
"full_name": "control tag category _category_collection",
"is_active": false
}
],
"المواد و الباقات و الكتب الإلكترونية": [
{
"id": 9,
"name": "view course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "عرض المواد والباقات و الكتب الإلكترونية",
"full_name": "view course bundle online_book _online_book_collection",
"is_active": false
},
{
"id": 10,
"name": "control course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "إضافة وتعديل وحذف المواد والباقات و الكتب الإلكترونية",
"full_name": "control course bundle online_book _online_book_collection",
"is_active": false
}
],
"المقالات و الإصدارات": [
{
"id": 11,
"name": "view article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "عرض المقالات الإصدارات",
"full_name": "view article publication _publication_collection",
"is_active": false
},
{
"id": 12,
"name": "control article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "إضافة وتعديل وحذف المقالات و الإصدارات",
"full_name": "control article publication _publication_collection",
"is_active": false
}
],
"التقييمات و التفضيلات و التعليقات": [
{
"id": 13,
"name": "view rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "عرض التقييمات والمفضلات و التعليقات",
"full_name": "view rate cart comment _comment_collection",
"is_active": false
},
{
"id": 14,
"name": "control rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "قبول وحظر وحذف التقييمات و التعليقات",
"full_name": "control rate cart comment _comment_collection",
"is_active": false
},
{
"id": 15,
"name": "reply rate cart comment _comment_collection",
"suffix": "comment_collection",
"suffix_ar": "التقييمات و التفضيلات و التعليقات",
"name_ar": "الرد على تقييمات و تعليقات العملاء",
"full_name": "reply rate cart comment _comment_collection",
"is_active": false
}
],
"التخفيضات": [
{
"id": 16,
"name": "view discount _discount_collection",
"suffix": "discount_collection",
"suffix_ar": "التخفيضات",
"name_ar": "عرض التخفيضات",
"full_name": "view discount _discount_collection",
"is_active": false
},
{
"id": 17,
"name": "control discount _discount_collection",
"suffix": "discount_collection",
"suffix_ar": "التخفيضات",
"name_ar": "إضافة و تعديل وحذف التخفيضات",
"full_name": "control discount _discount_collection",
"is_active": false
}
],
"الطلبات": [
{
"id": 18,
"name": "view order _order_collection",
"suffix": "order_collection",
"suffix_ar": "الطلبات",
"name_ar": "عرض الطلبات",
"full_name": "view order _order_collection",
"is_active": false
},
{
"id": 19,
"name": "update order _order_collection",
"suffix": "order_collection",
"suffix_ar": "الطلبات",
"name_ar": "تعديل الطلبات",
"full_name": "update order _order_collection",
"is_active": false
}
],
"الإشتراكات": [
{
"id": 20,
"name": "view subscription _subscription_collection",
"suffix": "subscription_collection",
"suffix_ar": "الإشتراكات",
"name_ar": "عرض الإشتراكات",
"full_name": "view subscription _subscription_collection",
"is_active": false
},
{
"id": 21,
"name": "control subscription _subscription_collection",
"suffix": "subscription_collection",
"suffix_ar": "الإشتراكات",
"name_ar": "إضافة و تعديل وحذف الإشتراكات",
"full_name": "control subscription _subscription_collection",
"is_active": false
}
],
"الأسئلة الشائعة و الإعدادات": [
{
"id": 22,
"name": "view faq setting _setting_collection",
"suffix": "setting_collection",
"suffix_ar": "الأسئلة الشائعة و الإعدادات",
"name_ar": "عرض الأسئلة الشائعة والإعدادات",
"full_name": "view faq setting _setting_collection",
"is_active": false
},
{
"id": 23,
"name": "update setting _setting_collection",
"suffix": "setting_collection",
"suffix_ar": "الأسئلة الشائعة و الإعدادات",
"name_ar": "تعديل الإعدادات",
"full_name": "update setting _setting_collection",
"is_active": false
},
{
"id": 24,
"name": "control faq _setting_collection",
"suffix": "setting_collection",
"suffix_ar": "الأسئلة الشائعة و الإعدادات",
"name_ar": "حذف وتعديل وإضافة الأسئلة الشائعة",
"full_name": "control faq _setting_collection",
"is_active": false
},
{
"id": 31,
"name": "view FAQ category setting _setting_collection",
"suffix": "setting_collection",
"suffix_ar": "الأسئلة الشائعة و الإعدادات",
"name_ar": "عرض قائمة تصنيفات الأسئلة الشائعة ",
"full_name": "view FAQ category setting _setting_collection",
"is_active": false
},
{
"id": 32,
"name": "control FAQ Category setting _setting_collection",
"suffix": "setting_collection",
"suffix_ar": "الأسئلة الشائعة و الإعدادات",
"name_ar": "إضافة وحذف وتعديل تصنيفات الأسئلة الشائعة",
"full_name": "control FAQ Category setting _setting_collection",
"is_active": false
}
],
"المسوقين": [
{
"id": 25,
"name": "view marketer _marketer_collection",
"suffix": "marketer_collection",
"suffix_ar": "المسوقين",
"name_ar": "عرض المسوقين",
"full_name": "view marketer _marketer_collection",
"is_active": false
},
{
"id": 26,
"name": "control marketer _marketer_collection",
"suffix": "marketer_collection",
"suffix_ar": "المسوقين",
"name_ar": "انشاء سند استلام",
"full_name": "control marketer _marketer_collection",
"is_active": false
}
],
},
"permissions_ids": []
},
"status_code": 200
}
Update Role
PATCH /v1/admin/roles/{id}
Update an existing role.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | No | Role name (3-32 chars, lowercase with underscores only) |
permissions | array | No | Array of permission IDs |
permissions.* | string | Yes (if permissions provided) | Permission UUID |
Response
{
//ROUTE NOT WORKING
}
List Permissions
GET /v1/admin/permissions
Retrieve a list of all available permissions grouped by their categories.
Response
{
"success": true,
"message": "تم حفظ البيانات بنجاح.",
"data": {
"all_permissions": {
"المستخدمين": [
{
"id": 1,
"name": "ban user from entering system _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "حظر مستخدم من دخول النظام",
"full_name": "ban user from entering system _user_collection",
"is_active": false
},
{
"id": 2,
"name": "view user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "عرض المستخدمين",
"full_name": "view user _user_collection",
"is_active": false
},
{
"id": 3,
"name": "control user _user_collection",
"suffix": "user_collection",
"suffix_ar": "المستخدمين",
"name_ar": "إضافة وتعديل وحذف المستخدمين",
"full_name": "control user _user_collection",
"is_active": false
}
],
"العملاء": [
{
"id": 4,
"name": "ban customer from commenting _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "حظر العملاء من التعليق",
"full_name": "ban customer from commenting _customer_collection",
"is_active": false
},
{
"id": 5,
"name": "view customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "عرض العملاء",
"full_name": "view customer _customer_collection",
"is_active": false
},
{
"id": 6,
"name": "control customer _customer_collection",
"suffix": "customer_collection",
"suffix_ar": "العملاء",
"name_ar": "إضافة وتعديل وحذف العملاء",
"full_name": "control customer _customer_collection",
"is_active": false
}
],
"الأوسمة و التصنيفات": [
{
"id": 7,
"name": "view tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "عرض الأوسمة و التصنيفات",
"full_name": "view tag category _category_collection",
"is_active": false
},
{
"id": 8,
"name": "control tag category _category_collection",
"suffix": "category_collection",
"suffix_ar": "الأوسمة و التصنيفات",
"name_ar": "إضافة وتعديل وحذف الأوسمة و التصنيفات",
"full_name": "control tag category _category_collection",
"is_active": false
}
],
"المواد و الباقات و الكتب الإلكترونية": [
{
"id": 9,
"name": "view course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "عرض المواد والباقات و الكتب الإلكترونية",
"full_name": "view course bundle online_book _online_book_collection",
"is_active": false
},
{
"id": 10,
"name": "control course bundle online_book _online_book_collection",
"suffix": "book _online_book_collection",
"suffix_ar": "المواد و الباقات و الكتب الإلكترونية",
"name_ar": "إضافة وتعديل وحذف المواد والباقات و الكتب الإلكترونية",
"full_name": "control course bundle online_book _online_book_collection",
"is_active": false
}
],
"المقالات و الإصدارات": [
{
"id": 11,
"name": "view article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "عرض المقالات الإصدارات",
"full_name": "view article publication _publication_collection",
"is_active": false
},
{
"id": 12,
"name": "control article publication _publication_collection",
"suffix": "publication_collection",
"suffix_ar": "المقالات و الإصدارات",
"name_ar": "إضافة وتعديل وحذف المقالات و الإصدارات",
"full_name": "control article publication _publication_collection",
"is_active": false
}
],
}
},
"status_code": 200
}
Authorization
All role and permission endpoints require admin authorization. The user must have the appropriate permissions to perform these operations. Specifically, the user needs:
indexpermission on Settings to view roles and permissionsupdatepermission on Settings to create, update, or delete roles