Introduction

The Qeei is a B2B SaaS (Software-as-a-Service) platform designed to digitize and streamline the asset valuation process. It operates as a multi-tenant system, meaning a single instance of the software serves multiple companies (tenants), with each company's data kept isolated.


The core concept is to move valuation companies away from manual, paper-based, and Excel-driven workflows to a centralized, online system that manages the entire lifecycle of a valuation request.



Access Requirements


Before using this API, you must obtain your App Key, Secret Key, and the implementation details for X-SIGNATURE from the system administrator.

All API requests must include these credentials; any request without them will be rejected.

Base API URL
https://qeei-backend-admin-dev.dafa.dev/api/v1

Common Errors

A guide to consistent error response formats used across all endpoints.

Error 401 – Unauthorized

The request requires authentication. The user is either not logged in or does not have a valid access token.

Error Response
{
    "message": "Unauthorized",
    "success": false
}

Error 403 – Forbidden

The request was understood, but the server refuses to authorize it. The user does not have permission to perform this action.

Error Response
{
    "message": "You are not allowed to perform this action",
    "success": false
}

Error 404 – Not Found

The requested resource could not be found on the server. It may have been moved or deleted.

Error Response
{
    "message": "Resource not found",
    "success": false
}

Error 405 – Method Not Allowed

The HTTP method used is not supported for this endpoint. Check the allowed request methods.

Error Response
{
    "message": "Method not allowed",
    "success": false
}

Error 419 – Page Expired

The session or CSRF token has expired. Please refresh the page and try again.

Error Response
{
    "message": "Page Expired",
    "success": false
}

Error 422 – Unprocessable Entity

The server understood the request, but the submitted data was invalid. Please review and correct the errors.(Errors may be return array or string)

Error Response
{
    "errors": [],
    "message": "Validation Error",
    "success": false
}

Error 500 – Internal Server Error

An unexpected error occurred on the server. Please try again later or contact support.

Error Response
{
    "message": "Server Error",
    "success": false
}
POST /api/v1/login

Admin Login

Authenticates an administrator and returns an access token.

Authenticates an administrator and returns an access token.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
step integer 1
email string admin@base.com
password string P@ssw0rd

Request Validations Or Notes

Field/Name Examples
step required, integer, allowed: 1, 2
email required, valid email, exists admins,email
password required if step = 1, StrongPassword
otp required if step = 2, 4 digits
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Admin",
        "email": "admin@base.com",
        "phone": "000000000000",
        "roles": [
            {
                "id": 1,
                "name": "Default Role"
            },
            {
                "id": 2,
                "name": "Super Admin Role "
            }
        ],
        "token": "7|sGnlg9IC8rZ3ybNsLN3r1n8vuIVMe5cNzm2VFr2o307a9319",
        "avatar": "",
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "permissions": [
            "users-fetch",
            "users-create",
            "users-read",
            "users-update",
            "users-delete",
            "valuers-fetch",
            "valuers-create",
            "valuers-read",
            "valuers-update",
            "valuers-delete",
            "requests-fetch",
            "requests-create",
            "requests-read",
            "requests-update",
            "requests-delete",
            "reports-fetch",
            "reports-create",
            "reports-read",
            "reports-update",
            "reports-delete",
            "team_management-fetch",
            "team_management-create",
            "team_management-read",
            "team_management-update",
            "team_management-delete",
            "finance-fetch",
            "finance-create",
            "finance-read",
            "finance-update",
            "finance-delete"
        ]
    },
    "message": "welcome Admin",
    "success": true
}
POST /api/v1/forget-password

Forget Password Request

Sends an OTP to the user email for password recovery.

Sends an OTP to the user email for password recovery.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
email string admin@base.com

Request Validations Or Notes

Field/Name Examples
email required, valid email, exists admins,email
Success (200 OK)
{
    "data": {
        "token": "SJXwJKTiW6hxnFSn7i7IyScUUYpIQSCM9o5L4qmZBgcHlaNBzQKpe05QPKNrbPIw"
    },
    "message": "Please check your email",
    "success": true
}
POST /api/v1/verify-forget-password-otp

Verify OTP

Verifies the OTP sent to the user email for password recovery.

Verifies the OTP sent to the user email for password recovery.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
otp string 1234
email string admin@base.com
token string token Key

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
otp required, 4 digits
token required, exists users,change_password_token
Success (200 OK)
{
    "data": [],
    "message": "Your Otp Verified successfully.",
    "success": true
}
POST /api/v1/reset-password

Reset Password

Updates the user password using the provided OTP and temporary token.

Updates the user password using the provided OTP and temporary token.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
otp string 1234
email string admin@base.com
token string token Key
password string P@ssw0rd

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
password required, confirmed, StrongPassword
token required, exists users,change_password_token
Success (200 OK)
{
    "data": [],
    "message": "Password reset successfully.",
    "success": true
}
POST /api/v1/logout

Admin Logout

Revokes the current access token and logs the user out.

Revokes the current access token and logs the user out.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Good by.",
    "success": true
}
POST /api/v1/mobile/users/register

User Register

Registers a new mobile user and triggers an OTP verification.

Initiates registration. User data is temporarily cached until verification.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
name string New User
email string user@example.com
phone string 01011112222
password string P@ssw0rd123
password_confirmation string P@ssw0rd123

Request Validations Or Notes

Field/Name Examples
name required, string, max 255
phone required, string, unique users,phone
email optional, valid email, unique users,email
password required, confirmed, StrongPassword
Success (200 OK)
{
    "data": {
        "otp": 1234
    },
    "message": "Registration OTP sent.",
    "success": true
}
POST /api/v1/mobile/users/login

User Login

Initializes login for a mobile user by verifying credentials.

Validates phone and password. Returns a Bearer token upon success.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
phone string 01011112222
password string P@ssw0rd123

Request Validations Or Notes

Field/Name Examples
phone required, string, exists users,phone
password required, string
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "New User",
        "email": "user@example.com",
        "phone": "01011112222",
        "token": "9|TaxAC1oZbNPDecQSQUSGRPYBo3ugYifvHty1mjaG0b3e1683",
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": true,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "welcome New User",
    "success": true
}
POST /api/v1/mobile/users/verify

User Verify OTP

Completes the registration or login flow for mobile users by verifying the OTP.

Validates the 6-digit OTP code. For registration, this step persists the user record to the database.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
otp string 1234
phone string 01011112222

Request Validations Or Notes

Field/Name Examples
phone required, string
otp required, 4 digits
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "New User",
        "email": "user@example.com",
        "phone": "01011112222",
        "token": "8|Lt603E9sheiQ0J8tgc7LHc4KcUnmWVwbBMavQcqfc11049b6",
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": false,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "Account verified and created successfully.",
    "success": true
}
POST /api/v1/mobile/users/forget-password

User Forget Password

Sends an OTP to the mobile user phone for password recovery.

Step 1 of password reset: Request an OTP for a registered phone number.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
phone string 01011112222

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
Success (200 OK)
{
    "data": {
        "otp": "1234",
        "token": "SJXwJKTiW6hxnFSn7i7IyScUUYpIQSCM9o5L4qmZBgcHlaNBzQKpe05QPKNrbPIw"
    },
    "message": "OTP for password reset sent.",
    "success": true
}
POST /api/v1/mobile/users/verify-forget-password

User Verify Forgot Password OTP

Verifies the OTP and token for mobile user password recovery.

Step 2 of password reset: Verify the OTP received via SMS along with the temporary token.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
otp string 1234
phone string 01011112222
token string token Key

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
otp required, 4 digits
token required, exists users,change_password_token
Success (200 OK)
{
    "data": [],
    "message": "Your Otp Verified successfully.",
    "success": true
}
POST /api/v1/mobile/users/reset-password

User Reset Password

Updates the mobile user password using the provided token.

Step 3 of password reset: Finalize the password reset by providing the new password and the validated token.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
phone string 01011112222
token string token Key
password string NewP@ssw0rd123
password_confirmation string NewP@ssw0rd123

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
password required, confirmed, StrongPassword
token required, exists users,change_password_token
Success (200 OK)
{
    "data": [],
    "message": "Password reset successfully.",
    "success": true
}
POST /api/v1/mobile/users/change-password

User Change Password

Updates the password for the authenticated mobile user.

Requires the current (old) password for verification before updating to the new password.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
new_password string NewP@ssw0rd123
old_password string P@ssw0rd123
new_password_confirmation string NewP@ssw0rd123

Request Validations Or Notes

Field/Name Examples
old_password required
new_password required, StrongPassword
Success (200 OK)
{
    "data": [],
    "message": "Password changed successfully.",
    "success": true
}
POST /api/v1/mobile/users/resend-otp

User Resend OTP

Resends a new OTP to the mobile user phone.

Requests a fresh OTP code. Checks both registration cache and database state.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json

Request Body

Field/Name Type Examples
phone string 01011112222

Request Validations Or Notes

Field/Name Examples
phone required, exists users,phone
Success (200 OK)
{
    "data": {
        "otp": 1234
    },
    "message": "OTP resent successfully.",
    "success": true
}
GET /api/v1/mobile/users/profile

User Profile

Retrieves the authenticated mobile user profile.

Retrieves the authenticated mobile user profile.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Demo User 2",
        "email": "user2@example.com",
        "phone": "01011113333",
        "token": null,
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": true,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "Profile retrieved successfully.",
    "success": true
}
POST /api/v1/mobile/users/profile

User Update Profile

Updates the authenticated mobile user profile with an optional avatar image.

Updates the user's profile details including name, email, phone, and avatar. Avatar must be a valid image.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Updated User Name
email string updated_email@example.com

Request Validations Or Notes

Field/Name Examples
name sometimes, string, max 255
email sometimes, valid email, unique users,email,1
phone sometimes, string, unique users,phone,1
avatar sometimes, image, types: jpeg,png,jpg,gif, max 2048
postal_code sometimes, string, max 20
main_address sometimes, string
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Updated User Name",
        "email": "updated_email@example.com",
        "phone": "01011113333",
        "token": null,
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": true,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "Profile updated successfully.",
    "success": true
}
POST /api/v1/mobile/users/refresh-token

User Refresh Token

Issues a new session token for the authenticated mobile user.

Issues a new session token for the authenticated mobile user.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "user": {
            "id": 1,
            "name": "Updated User Name",
            "email": "updated_email@example.com",
            "phone": "01011113333",
            "token": null,
            "avatar": "",
            "is_active": true,
            "created_at": "2026-05-18T11:18:10.000000Z",
            "expires_in": null,
            "token_type": "Bearer",
            "postal_code": null,
            "main_address": null,
            "last_login_at": null
        },
        "token": "10|DYQOQ3zUMahgWJTSDy8mas1HLjLZgkyoF6Zs9Wiz1509f105",
        "expires_in": null,
        "token_type": "Bearer"
    },
    "message": "New Token",
    "success": true
}
POST /api/v1/mobile/users/logout

User Logout

Logs out the authenticated mobile user and revokes the token.

Logs out the authenticated mobile user and revokes the token.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Good by.",
    "success": true
}
POST /api/v1/dashboard/admins

Create Admin

Create a new Admin.

Creates a new Admin in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Admin EFUIEN
email string admin+EFuieN@gmail.com
phone string 01111703723
roles array [{"role_id":1},{"role_id":2}]
password string P@ss0rd
description array {"ar":"\u0648\u0635\u0641 \u0627\u0644\u0645\u0633\u0624\u0648\u0644","en":"Admin description"}

Request Validations Or Notes

Field/Name Examples
name required, string, max 255
email required, valid email, unique admins,email
phone required, string, max 15, unique admins,phone
password required, StrongPassword
avatar optional, image, types: jpeg,png,jpg,gif, max 2048
is_active optional, true/false
roles required, array, min 1
roles[].role_id required, integer, exists roles,id
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Admin EFUIEN",
        "email": "admin+EFuieN@gmail.com",
        "phone": "01111703723",
        "roles": [
            {
                "id": 3,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            },
            {
                "id": 4,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            }
        ],
        "avatar": "",
        "created_at": "2026-05-18"
    },
    "message": "Data inserted successfully.",
    "success": true
}
GET /api/v1/dashboard/admins

Get Admin List

Retrieve a list of Admin.

Retrieves a list of Admin records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Admin",
            "email": "admin@base.com",
            "phone": "000000000000",
            "roles": [
                {
                    "id": 1,
                    "name": "Default Role",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        },
                        {
                            "id": 2,
                            "name": "Admin EFUIEN",
                            "email": "admin+EFuieN@gmail.com",
                            "phone": "01111703723",
                            "roles": [
                                {
                                    "id": 3,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 4,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Default Role Description",
                    "permissions": [
                        {
                            "id": 1,
                            "name": "users-fetch"
                        },
                        {
                            "id": 2,
                            "name": "users-create"
                        },
                        {
                            "id": 3,
                            "name": "users-read"
                        },
                        {
                            "id": 4,
                            "name": "users-update"
                        },
                        {
                            "id": 5,
                            "name": "users-delete"
                        },
                        {
                            "id": 6,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 7,
                            "name": "valuers-create"
                        },
                        {
                            "id": 8,
                            "name": "valuers-read"
                        },
                        {
                            "id": 9,
                            "name": "valuers-update"
                        },
                        {
                            "id": 10,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 11,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 12,
                            "name": "requests-create"
                        },
                        {
                            "id": 13,
                            "name": "requests-read"
                        },
                        {
                            "id": 14,
                            "name": "requests-update"
                        },
                        {
                            "id": 15,
                            "name": "requests-delete"
                        },
                        {
                            "id": 16,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 17,
                            "name": "reports-create"
                        },
                        {
                            "id": 18,
                            "name": "reports-read"
                        },
                        {
                            "id": 19,
                            "name": "reports-update"
                        },
                        {
                            "id": 20,
                            "name": "reports-delete"
                        },
                        {
                            "id": 21,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 22,
                            "name": "team_management-create"
                        },
                        {
                            "id": 23,
                            "name": "team_management-read"
                        },
                        {
                            "id": 24,
                            "name": "team_management-update"
                        },
                        {
                            "id": 25,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 26,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 27,
                            "name": "finance-create"
                        },
                        {
                            "id": 28,
                            "name": "finance-read"
                        },
                        {
                            "id": 29,
                            "name": "finance-update"
                        },
                        {
                            "id": 30,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                },
                {
                    "id": 2,
                    "name": "Super Admin Role ",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        },
                        {
                            "id": 2,
                            "name": "Admin EFUIEN",
                            "email": "admin+EFuieN@gmail.com",
                            "phone": "01111703723",
                            "roles": [
                                {
                                    "id": 3,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 4,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Super Admin Role Description",
                    "permissions": [
                        {
                            "id": 31,
                            "name": "users-fetch"
                        },
                        {
                            "id": 32,
                            "name": "users-create"
                        },
                        {
                            "id": 33,
                            "name": "users-read"
                        },
                        {
                            "id": 34,
                            "name": "users-update"
                        },
                        {
                            "id": 35,
                            "name": "users-delete"
                        },
                        {
                            "id": 36,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 37,
                            "name": "valuers-create"
                        },
                        {
                            "id": 38,
                            "name": "valuers-read"
                        },
                        {
                            "id": 39,
                            "name": "valuers-update"
                        },
                        {
                            "id": 40,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 41,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 42,
                            "name": "requests-create"
                        },
                        {
                            "id": 43,
                            "name": "requests-read"
                        },
                        {
                            "id": 44,
                            "name": "requests-update"
                        },
                        {
                            "id": 45,
                            "name": "requests-delete"
                        },
                        {
                            "id": 46,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 47,
                            "name": "reports-create"
                        },
                        {
                            "id": 48,
                            "name": "reports-read"
                        },
                        {
                            "id": 49,
                            "name": "reports-update"
                        },
                        {
                            "id": 50,
                            "name": "reports-delete"
                        },
                        {
                            "id": 51,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 52,
                            "name": "team_management-create"
                        },
                        {
                            "id": 53,
                            "name": "team_management-read"
                        },
                        {
                            "id": 54,
                            "name": "team_management-update"
                        },
                        {
                            "id": 55,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 56,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 57,
                            "name": "finance-create"
                        },
                        {
                            "id": 58,
                            "name": "finance-read"
                        },
                        {
                            "id": 59,
                            "name": "finance-update"
                        },
                        {
                            "id": 60,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                }
            ],
            "avatar": "",
            "created_at": "2026-05-18"
        },
        {
            "id": 2,
            "name": "Admin EFUIEN",
            "email": "admin+EFuieN@gmail.com",
            "phone": "01111703723",
            "roles": [
                {
                    "id": 1,
                    "name": "Default Role",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        },
                        {
                            "id": 2,
                            "name": "Admin EFUIEN",
                            "email": "admin+EFuieN@gmail.com",
                            "phone": "01111703723",
                            "roles": [
                                {
                                    "id": 3,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 4,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Default Role Description",
                    "permissions": [
                        {
                            "id": 1,
                            "name": "users-fetch"
                        },
                        {
                            "id": 2,
                            "name": "users-create"
                        },
                        {
                            "id": 3,
                            "name": "users-read"
                        },
                        {
                            "id": 4,
                            "name": "users-update"
                        },
                        {
                            "id": 5,
                            "name": "users-delete"
                        },
                        {
                            "id": 6,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 7,
                            "name": "valuers-create"
                        },
                        {
                            "id": 8,
                            "name": "valuers-read"
                        },
                        {
                            "id": 9,
                            "name": "valuers-update"
                        },
                        {
                            "id": 10,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 11,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 12,
                            "name": "requests-create"
                        },
                        {
                            "id": 13,
                            "name": "requests-read"
                        },
                        {
                            "id": 14,
                            "name": "requests-update"
                        },
                        {
                            "id": 15,
                            "name": "requests-delete"
                        },
                        {
                            "id": 16,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 17,
                            "name": "reports-create"
                        },
                        {
                            "id": 18,
                            "name": "reports-read"
                        },
                        {
                            "id": 19,
                            "name": "reports-update"
                        },
                        {
                            "id": 20,
                            "name": "reports-delete"
                        },
                        {
                            "id": 21,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 22,
                            "name": "team_management-create"
                        },
                        {
                            "id": 23,
                            "name": "team_management-read"
                        },
                        {
                            "id": 24,
                            "name": "team_management-update"
                        },
                        {
                            "id": 25,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 26,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 27,
                            "name": "finance-create"
                        },
                        {
                            "id": 28,
                            "name": "finance-read"
                        },
                        {
                            "id": 29,
                            "name": "finance-update"
                        },
                        {
                            "id": 30,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                },
                {
                    "id": 2,
                    "name": "Super Admin Role ",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        },
                        {
                            "id": 2,
                            "name": "Admin EFUIEN",
                            "email": "admin+EFuieN@gmail.com",
                            "phone": "01111703723",
                            "roles": [
                                {
                                    "id": 3,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 4,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Super Admin Role Description",
                    "permissions": [
                        {
                            "id": 31,
                            "name": "users-fetch"
                        },
                        {
                            "id": 32,
                            "name": "users-create"
                        },
                        {
                            "id": 33,
                            "name": "users-read"
                        },
                        {
                            "id": 34,
                            "name": "users-update"
                        },
                        {
                            "id": 35,
                            "name": "users-delete"
                        },
                        {
                            "id": 36,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 37,
                            "name": "valuers-create"
                        },
                        {
                            "id": 38,
                            "name": "valuers-read"
                        },
                        {
                            "id": 39,
                            "name": "valuers-update"
                        },
                        {
                            "id": 40,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 41,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 42,
                            "name": "requests-create"
                        },
                        {
                            "id": 43,
                            "name": "requests-read"
                        },
                        {
                            "id": 44,
                            "name": "requests-update"
                        },
                        {
                            "id": 45,
                            "name": "requests-delete"
                        },
                        {
                            "id": 46,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 47,
                            "name": "reports-create"
                        },
                        {
                            "id": 48,
                            "name": "reports-read"
                        },
                        {
                            "id": 49,
                            "name": "reports-update"
                        },
                        {
                            "id": 50,
                            "name": "reports-delete"
                        },
                        {
                            "id": 51,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 52,
                            "name": "team_management-create"
                        },
                        {
                            "id": 53,
                            "name": "team_management-read"
                        },
                        {
                            "id": 54,
                            "name": "team_management-update"
                        },
                        {
                            "id": 55,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 56,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 57,
                            "name": "finance-create"
                        },
                        {
                            "id": 58,
                            "name": "finance-read"
                        },
                        {
                            "id": 59,
                            "name": "finance-update"
                        },
                        {
                            "id": 60,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                }
            ],
            "avatar": "",
            "created_at": "2026-05-18"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 2,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/dashboard/admins/2

Get Admin Details

Retrieve Admin details.

Retrieves detailed information about a specific Admin using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Admin EFUIEN",
        "email": "admin+EFuieN@gmail.com",
        "phone": "01111703723",
        "roles": [
            {
                "id": 3,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            },
            {
                "id": 4,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            }
        ],
        "avatar": "",
        "created_at": "2026-05-18"
    },
    "message": "Data retrieved successfully.",
    "success": true
}
PUT /api/v1/dashboard/admins/2

Update Admin

Update an existing Admin.

Updates the specified Admin with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
id integer 2
name string Admin Updated LY9I9B
email string admin_upd+Ly9i9B@gmail.com
phone string 01224354914
roles array [{"role_id":1},{"role_id":2}]
password string P@ss0rd

Request Validations Or Notes

Field/Name Examples
id required, integer, exists admins,id
name required, string, max 255
email required, valid email, unique admins,email,
phone required, string, max 15, unique admins,phone,
password optional, StrongPassword
avatar optional, image, types: jpeg,png,jpg,gif, max 2048
is_active optional, true/false
roles required, array, min 1
roles[].role_id required, integer, exists roles,id
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Admin Updated LY9I9B",
        "email": "admin_upd+Ly9i9B@gmail.com",
        "phone": "01224354914",
        "roles": [
            {
                "id": 3,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            },
            {
                "id": 4,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            }
        ],
        "avatar": "",
        "created_at": "2026-05-18"
    },
    "message": "Data updated successfully.",
    "success": true
}
PATCH /api/v1/dashboard/admins/2/toggle-active

Toggle Admin Status

Switch the Admin status between active and inactive.

Updates the status of the specified Admin by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Admin Updated LY9I9B",
        "email": "admin_upd+Ly9i9B@gmail.com",
        "phone": "01224354914",
        "roles": [
            {
                "id": 3,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            },
            {
                "id": 4,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            }
        ],
        "avatar": "",
        "created_at": "2026-05-18"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/dashboard/admins/2

Delete Admin

Delete a Admin.

Deletes the specified Admin from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/dashboard/admins/trash

Get Deleted Admin

List deleted Admin.

Retrieve a list of soft-deleted Admin records from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 2,
            "name": "Admin Updated LY9I9B",
            "email": "admin_upd+Ly9i9B@gmail.com",
            "phone": "01224354914",
            "roles": [
                {
                    "id": 1,
                    "name": "Default Role",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Default Role Description",
                    "permissions": [
                        {
                            "id": 1,
                            "name": "users-fetch"
                        },
                        {
                            "id": 2,
                            "name": "users-create"
                        },
                        {
                            "id": 3,
                            "name": "users-read"
                        },
                        {
                            "id": 4,
                            "name": "users-update"
                        },
                        {
                            "id": 5,
                            "name": "users-delete"
                        },
                        {
                            "id": 6,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 7,
                            "name": "valuers-create"
                        },
                        {
                            "id": 8,
                            "name": "valuers-read"
                        },
                        {
                            "id": 9,
                            "name": "valuers-update"
                        },
                        {
                            "id": 10,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 11,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 12,
                            "name": "requests-create"
                        },
                        {
                            "id": 13,
                            "name": "requests-read"
                        },
                        {
                            "id": 14,
                            "name": "requests-update"
                        },
                        {
                            "id": 15,
                            "name": "requests-delete"
                        },
                        {
                            "id": 16,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 17,
                            "name": "reports-create"
                        },
                        {
                            "id": 18,
                            "name": "reports-read"
                        },
                        {
                            "id": 19,
                            "name": "reports-update"
                        },
                        {
                            "id": 20,
                            "name": "reports-delete"
                        },
                        {
                            "id": 21,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 22,
                            "name": "team_management-create"
                        },
                        {
                            "id": 23,
                            "name": "team_management-read"
                        },
                        {
                            "id": 24,
                            "name": "team_management-update"
                        },
                        {
                            "id": 25,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 26,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 27,
                            "name": "finance-create"
                        },
                        {
                            "id": 28,
                            "name": "finance-read"
                        },
                        {
                            "id": 29,
                            "name": "finance-update"
                        },
                        {
                            "id": 30,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                },
                {
                    "id": 2,
                    "name": "Super Admin Role ",
                    "admins": [
                        {
                            "id": 1,
                            "name": "Admin",
                            "email": "admin@base.com",
                            "phone": "000000000000",
                            "roles": [
                                {
                                    "id": 1,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                },
                                {
                                    "id": 2,
                                    "name": "",
                                    "is_active": true,
                                    "created_at": "2026-05-18",
                                    "description": "",
                                    "admins_count": 0,
                                    "permissions_count": 0
                                }
                            ],
                            "avatar": "",
                            "created_at": "2026-05-18"
                        }
                    ],
                    "is_active": true,
                    "created_at": "2026-05-18",
                    "description": "Super Admin Role Description",
                    "permissions": [
                        {
                            "id": 31,
                            "name": "users-fetch"
                        },
                        {
                            "id": 32,
                            "name": "users-create"
                        },
                        {
                            "id": 33,
                            "name": "users-read"
                        },
                        {
                            "id": 34,
                            "name": "users-update"
                        },
                        {
                            "id": 35,
                            "name": "users-delete"
                        },
                        {
                            "id": 36,
                            "name": "valuers-fetch"
                        },
                        {
                            "id": 37,
                            "name": "valuers-create"
                        },
                        {
                            "id": 38,
                            "name": "valuers-read"
                        },
                        {
                            "id": 39,
                            "name": "valuers-update"
                        },
                        {
                            "id": 40,
                            "name": "valuers-delete"
                        },
                        {
                            "id": 41,
                            "name": "requests-fetch"
                        },
                        {
                            "id": 42,
                            "name": "requests-create"
                        },
                        {
                            "id": 43,
                            "name": "requests-read"
                        },
                        {
                            "id": 44,
                            "name": "requests-update"
                        },
                        {
                            "id": 45,
                            "name": "requests-delete"
                        },
                        {
                            "id": 46,
                            "name": "reports-fetch"
                        },
                        {
                            "id": 47,
                            "name": "reports-create"
                        },
                        {
                            "id": 48,
                            "name": "reports-read"
                        },
                        {
                            "id": 49,
                            "name": "reports-update"
                        },
                        {
                            "id": 50,
                            "name": "reports-delete"
                        },
                        {
                            "id": 51,
                            "name": "team_management-fetch"
                        },
                        {
                            "id": 52,
                            "name": "team_management-create"
                        },
                        {
                            "id": 53,
                            "name": "team_management-read"
                        },
                        {
                            "id": 54,
                            "name": "team_management-update"
                        },
                        {
                            "id": 55,
                            "name": "team_management-delete"
                        },
                        {
                            "id": 56,
                            "name": "finance-fetch"
                        },
                        {
                            "id": 57,
                            "name": "finance-create"
                        },
                        {
                            "id": 58,
                            "name": "finance-read"
                        },
                        {
                            "id": 59,
                            "name": "finance-update"
                        },
                        {
                            "id": 60,
                            "name": "finance-delete"
                        }
                    ],
                    "admins_count": 0,
                    "permissions_count": 0
                }
            ],
            "avatar": "",
            "created_at": "2026-05-18"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
PATCH /api/v1/dashboard/admins/2/restore

Restore Admin

Restore deleted Admin.

Restore a previously deleted Admin record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Admin Updated LY9I9B",
        "email": "admin_upd+Ly9i9B@gmail.com",
        "phone": "01224354914",
        "roles": [
            {
                "id": 3,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            },
            {
                "id": 4,
                "name": "",
                "is_active": true,
                "created_at": "2026-05-18",
                "description": "",
                "admins_count": 0,
                "permissions_count": 0
            }
        ],
        "avatar": "",
        "created_at": "2026-05-18"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/dashboard/admins/2/force-delete

Permanently Delete Admin

Force delete Admin.

Permanently remove the Admin record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
POST /api/v1/dashboard/roles

Create Role

Create a new Role.

Creates a new Role in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name array {"ar":"\u0623\u062e\u062a\u0628\u0627\u0631","en":"Test Role"}
description array {"ar":"\u0648\u0635\u0641 \u0627\u0644\u062f\u0648\u0631","en":"Role description"}
permissions array [{"model_id":1,"permission_id":1}]

Request Validations Or Notes

Field/Name Examples
name required
name.ar required, ArabicRoleName
name.en required, EnglishRoleName
description optional, array
description.ar optional, string
description.en optional, string
permissions required, array, min 1
permissions[].permission_id required, integer, exists permissions,id
permissions[].model_id required, integer, CheckPermissionInModule
permissions[].name optional, string
Success (200 OK)
{
    "data": {
        "id": 3,
        "created_at": "2026-05-18T11:18:18.000000Z",
        "updated_at": "2026-05-18T11:18:18.000000Z"
    },
    "message": "Data inserted successfully.",
    "success": true
}
GET /api/v1/dashboard/roles

Get Role List

Retrieve a list of Role.

Retrieves a list of Role records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Default Role",
            "admins": [
                {
                    "id": 1,
                    "name": "Admin",
                    "email": "admin@base.com",
                    "phone": "000000000000",
                    "roles": [
                        {
                            "id": 1,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        },
                        {
                            "id": 2,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        }
                    ],
                    "avatar": "",
                    "created_at": "2026-05-18"
                },
                {
                    "id": 2,
                    "name": "Admin EFUIEN",
                    "email": "admin+EFuieN@gmail.com",
                    "phone": "01111703723",
                    "roles": [
                        {
                            "id": 3,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        },
                        {
                            "id": 4,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        }
                    ],
                    "avatar": "",
                    "created_at": "2026-05-18"
                }
            ],
            "is_active": true,
            "created_at": "2026-05-18",
            "description": "Default Role Description",
            "permissions": [
                {
                    "id": 1,
                    "name": "users-fetch"
                },
                {
                    "id": 2,
                    "name": "users-create"
                },
                {
                    "id": 3,
                    "name": "users-read"
                },
                {
                    "id": 4,
                    "name": "users-update"
                },
                {
                    "id": 5,
                    "name": "users-delete"
                },
                {
                    "id": 6,
                    "name": "valuers-fetch"
                },
                {
                    "id": 7,
                    "name": "valuers-create"
                },
                {
                    "id": 8,
                    "name": "valuers-read"
                },
                {
                    "id": 9,
                    "name": "valuers-update"
                },
                {
                    "id": 10,
                    "name": "valuers-delete"
                },
                {
                    "id": 11,
                    "name": "requests-fetch"
                },
                {
                    "id": 12,
                    "name": "requests-create"
                },
                {
                    "id": 13,
                    "name": "requests-read"
                },
                {
                    "id": 14,
                    "name": "requests-update"
                },
                {
                    "id": 15,
                    "name": "requests-delete"
                },
                {
                    "id": 16,
                    "name": "reports-fetch"
                },
                {
                    "id": 17,
                    "name": "reports-create"
                },
                {
                    "id": 18,
                    "name": "reports-read"
                },
                {
                    "id": 19,
                    "name": "reports-update"
                },
                {
                    "id": 20,
                    "name": "reports-delete"
                },
                {
                    "id": 21,
                    "name": "team_management-fetch"
                },
                {
                    "id": 22,
                    "name": "team_management-create"
                },
                {
                    "id": 23,
                    "name": "team_management-read"
                },
                {
                    "id": 24,
                    "name": "team_management-update"
                },
                {
                    "id": 25,
                    "name": "team_management-delete"
                },
                {
                    "id": 26,
                    "name": "finance-fetch"
                },
                {
                    "id": 27,
                    "name": "finance-create"
                },
                {
                    "id": 28,
                    "name": "finance-read"
                },
                {
                    "id": 29,
                    "name": "finance-update"
                },
                {
                    "id": 30,
                    "name": "finance-delete"
                }
            ],
            "admins_count": 2,
            "permissions_count": 30
        },
        {
            "id": 2,
            "name": "Super Admin Role ",
            "admins": [
                {
                    "id": 1,
                    "name": "Admin",
                    "email": "admin@base.com",
                    "phone": "000000000000",
                    "roles": [
                        {
                            "id": 1,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        },
                        {
                            "id": 2,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        }
                    ],
                    "avatar": "",
                    "created_at": "2026-05-18"
                },
                {
                    "id": 2,
                    "name": "Admin EFUIEN",
                    "email": "admin+EFuieN@gmail.com",
                    "phone": "01111703723",
                    "roles": [
                        {
                            "id": 3,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        },
                        {
                            "id": 4,
                            "name": "",
                            "is_active": true,
                            "created_at": "2026-05-18",
                            "description": "",
                            "admins_count": 0,
                            "permissions_count": 0
                        }
                    ],
                    "avatar": "",
                    "created_at": "2026-05-18"
                }
            ],
            "is_active": true,
            "created_at": "2026-05-18",
            "description": "Super Admin Role Description",
            "permissions": [
                {
                    "id": 31,
                    "name": "users-fetch"
                },
                {
                    "id": 32,
                    "name": "users-create"
                },
                {
                    "id": 33,
                    "name": "users-read"
                },
                {
                    "id": 34,
                    "name": "users-update"
                },
                {
                    "id": 35,
                    "name": "users-delete"
                },
                {
                    "id": 36,
                    "name": "valuers-fetch"
                },
                {
                    "id": 37,
                    "name": "valuers-create"
                },
                {
                    "id": 38,
                    "name": "valuers-read"
                },
                {
                    "id": 39,
                    "name": "valuers-update"
                },
                {
                    "id": 40,
                    "name": "valuers-delete"
                },
                {
                    "id": 41,
                    "name": "requests-fetch"
                },
                {
                    "id": 42,
                    "name": "requests-create"
                },
                {
                    "id": 43,
                    "name": "requests-read"
                },
                {
                    "id": 44,
                    "name": "requests-update"
                },
                {
                    "id": 45,
                    "name": "requests-delete"
                },
                {
                    "id": 46,
                    "name": "reports-fetch"
                },
                {
                    "id": 47,
                    "name": "reports-create"
                },
                {
                    "id": 48,
                    "name": "reports-read"
                },
                {
                    "id": 49,
                    "name": "reports-update"
                },
                {
                    "id": 50,
                    "name": "reports-delete"
                },
                {
                    "id": 51,
                    "name": "team_management-fetch"
                },
                {
                    "id": 52,
                    "name": "team_management-create"
                },
                {
                    "id": 53,
                    "name": "team_management-read"
                },
                {
                    "id": 54,
                    "name": "team_management-update"
                },
                {
                    "id": 55,
                    "name": "team_management-delete"
                },
                {
                    "id": 56,
                    "name": "finance-fetch"
                },
                {
                    "id": 57,
                    "name": "finance-create"
                },
                {
                    "id": 58,
                    "name": "finance-read"
                },
                {
                    "id": 59,
                    "name": "finance-update"
                },
                {
                    "id": 60,
                    "name": "finance-delete"
                }
            ],
            "admins_count": 2,
            "permissions_count": 30
        },
        {
            "id": 3,
            "name": "Test Role",
            "admins": [],
            "is_active": true,
            "created_at": "2026-05-18",
            "description": "Role description",
            "permissions": [
                {
                    "id": 61,
                    "name": "users_fetch"
                }
            ],
            "admins_count": 0,
            "permissions_count": 1
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 3,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/dashboard/roles/3

Get Role Details

Retrieve Role details.

Retrieves detailed information about a specific Role using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 3,
        "name": "Test Role",
        "is_active": true,
        "created_at": "2026-05-18",
        "description": "Role description",
        "admins_count": 0,
        "permissions_count": 0
    },
    "message": "Data retrieved successfully.",
    "success": true
}
PUT /api/v1/dashboard/roles/3

Update Role

Update an existing Role.

Updates the specified Role with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
id integer 3
name array {"ar":"\u0623\u062e\u062a\u0628\u0627\u0631","en":"Test Role"}
permissions array [{"model_id":1,"permission_id":1}]

Request Validations Or Notes

Field/Name Examples
id required, exists roles,id
name required
name.ar required, ArabicRoleName
name.en required, EnglishRoleName
description optional, array
description.ar optional, string
description.en optional, string
permissions required, array, min 1
permissions[].permission_id required, integer, exists permissions,id
permissions[].model_id required, integer, CheckPermissionInModule
permissions[].name optional, string
Success (200 OK)
{
    "data": {
        "id": 3,
        "is_active": 1,
        "created_at": "2026-05-18T11:18:18.000000Z",
        "deleted_at": null,
        "updated_at": "2026-05-18T11:18:18.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
PATCH /api/v1/dashboard/roles/3/toggle-active

Toggle Role Status

Switch the Role status between active and inactive.

Updates the status of the specified Role by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 3,
        "is_active": false,
        "created_at": "2026-05-18T11:18:18.000000Z",
        "deleted_at": null,
        "updated_at": "2026-05-18T11:18:38.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/dashboard/roles/3

Delete Role

Delete a Role.

Deletes the specified Role from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/dashboard/roles/trash

Get Deleted Role

List deleted Role.

Retrieve a list of soft-deleted Role records from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 3,
            "name": "Test Role",
            "admins": [],
            "is_active": false,
            "created_at": "2026-05-18",
            "description": "Role description",
            "permissions": [
                {
                    "id": 61,
                    "name": "users_fetch"
                }
            ],
            "admins_count": 0,
            "permissions_count": 1
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
PATCH /api/v1/dashboard/roles/3/restore

Restore Role

Restore deleted Role.

Restore a previously deleted Role record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 3,
        "is_active": 0,
        "created_at": "2026-05-18T11:18:18.000000Z",
        "deleted_at": null,
        "updated_at": "2026-05-18T11:18:55.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/dashboard/roles/3/force-delete

Permanently Delete Role

Force delete Role.

Permanently remove the Role record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/dashboard/users

Get User List

Retrieve a list of User.

Retrieves a list of User records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Updated User Name",
            "email": "updated_email@example.com",
            "phone": "01011113333",
            "token": null,
            "avatar": "https:\/\/qeei_backend_admin.test\/storage",
            "is_active": true,
            "created_at": "2026-05-18",
            "expires_in": null,
            "token_type": "Bearer",
            "postal_code": null,
            "main_address": null,
            "last_login_at": null
        },
        {
            "id": 2,
            "name": "New User",
            "email": "user@example.com",
            "phone": "01011112222",
            "token": null,
            "avatar": "https:\/\/qeei_backend_admin.test\/storage",
            "is_active": true,
            "created_at": "2026-05-18",
            "expires_in": null,
            "token_type": "Bearer",
            "postal_code": null,
            "main_address": null,
            "last_login_at": null
        }
    ],
    "message": "Users retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 2,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/dashboard/users/4

Get User Details

Retrieve User details.

Retrieves detailed information about a specific User using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 4,
        "name": "John Doe",
        "email": "user2@demo.com",
        "phone": "01211172289",
        "token": null,
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": true,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "User details retrieved successfully.",
    "success": true
}
PATCH /api/v1/dashboard/users/4/toggle-active

Toggle User Status

Switch the User status between active and inactive.

Updates the status of the specified User by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 4,
        "name": "John Doe",
        "email": "user2@demo.com",
        "phone": "01211172289",
        "token": null,
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": false,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "User status updated successfully.",
    "success": true
}
DELETE /api/v1/dashboard/users/4

Delete User

Delete a User.

Deletes the specified User from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "User deleted successfully.",
    "success": true
}
GET /api/v1/dashboard/users/trash

Get Deleted User

List deleted User.

Retrieve a list of soft-deleted User records from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 3,
            "name": "Trashed User",
            "email": "trashed_doc@example.com",
            "phone": "0509998887",
            "token": null,
            "avatar": "https:\/\/qeei_backend_admin.test\/storage",
            "is_active": true,
            "created_at": "2026-05-18",
            "expires_in": null,
            "token_type": "Bearer",
            "postal_code": null,
            "main_address": null,
            "last_login_at": null
        }
    ],
    "message": "Trashed users retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
PATCH /api/v1/dashboard/users/3/restore

Restore User

Restore deleted User.

Restore a previously deleted User record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 3,
        "name": "Trashed User",
        "email": "trashed_doc@example.com",
        "phone": "0509998887",
        "token": null,
        "avatar": "https:\/\/qeei_backend_admin.test\/storage",
        "is_active": true,
        "created_at": "2026-05-18",
        "expires_in": null,
        "token_type": "Bearer",
        "postal_code": null,
        "main_address": null,
        "last_login_at": null
    },
    "message": "User restored successfully.",
    "success": true
}
DELETE /api/v1/dashboard/users/3/force-delete

Permanently Delete User

Force delete User.

Permanently remove the User record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "User force deleted permanently.",
    "success": true
}
GET /api/v1/mobile/budgets/shared-with-me

Shared With Me

Budgets shared by others.

List budgets that other users have shared with you.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Budgets shared with you retrieved",
    "success": true
}
GET /api/v1/mobile/budgets

List Budgets

List my budgets.

Retrieves a list of all budgets the user owns or has access to. Supports filtering by status and type.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Trip Budget Doc",
            "type": "one_time",
            "status": "active",
            "currency": "SAR",
            "owner_id": 1,
            "userRole": "owner",
            "created_at": "2026-05-18T11:18:24.000000Z",
            "deleted_at": null,
            "is_trashed": false,
            "updated_at": "2026-05-18T11:18:24.000000Z",
            "description": null,
            "total_amount": 5000,
            "ending_balance": 5000,
            "total_expenses": 0
        }
    ],
    "message": "Budgets retrieved successfully",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
POST /api/v1/mobile/budgets

Create Budget

Initialise a new budget.

Create a new budget. Requires specifying the name, overall limit, and budget type (one-time or scheduled).

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string New Project Budget
type string one_time
currency string USD
description string Documentation test budget

Request Validations Or Notes

Field/Name Examples
name required, string, max 100
description optional, string
currency required, string, size
type required, enum: one_time, scheduled
status optional, enum: active, finished, hidden
total_amount optional, numeric, min 0
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "New Project Budget",
        "type": "one_time",
        "status": "active",
        "currency": "USD",
        "owner_id": 1,
        "userRole": null,
        "created_at": "2026-05-18T11:18:24.000000Z",
        "deleted_at": null,
        "is_trashed": false,
        "updated_at": "2026-05-18T11:18:24.000000Z",
        "description": "Documentation test budget",
        "total_amount": 0,
        "ending_balance": null,
        "total_expenses": 0
    },
    "message": "Budget created successfully",
    "success": true
}
GET /api/v1/mobile/budgets/1

Get Budget Details

Retrieve Budget details.

Retrieves detailed information about a specific Budget using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "budget": {
            "id": 1,
            "name": "Trip Budget Doc",
            "type": "one_time",
            "status": "active",
            "currency": "SAR",
            "owner_id": 1,
            "userRole": "owner",
            "created_at": "2026-05-18T11:18:24.000000Z",
            "deleted_at": null,
            "is_trashed": false,
            "updated_at": "2026-05-18T11:18:26.000000Z",
            "description": null,
            "total_amount": 5000,
            "ending_balance": 4950,
            "total_expenses": 50
        }
    },
    "message": "Budget retrieved",
    "success": true
}
PUT /api/v1/mobile/budgets/1

Update Budget

Update an existing Budget.

Updates the specified Budget with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
total_amount integer 5000

Request Validations Or Notes

Field/Name Examples
name sometimes, required, string, max 100
description optional, string
currency sometimes, required, string, size
type sometimes, required, enum: one_time, scheduled
status optional, enum: active, finished, hidden
total_amount optional, numeric, min 0
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Trip Budget Doc",
        "type": "one_time",
        "status": "active",
        "currency": "SAR",
        "owner_id": 1,
        "userRole": null,
        "created_at": "2026-05-18T11:18:24.000000Z",
        "deleted_at": null,
        "is_trashed": false,
        "updated_at": "2026-05-18T11:18:26.000000Z",
        "description": null,
        "total_amount": 5000,
        "ending_balance": 4950,
        "total_expenses": 50
    },
    "message": "Budget updated successfully",
    "success": true
}
PUT /api/v1/mobile/budgets/1/hide

hide Budget

Hide a budget.

Updates the budget status to hidden. Hidden budgets are still accessible but may be filtered out from default listings.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Trip Budget Doc",
        "type": "one_time",
        "status": "hidden",
        "currency": "SAR",
        "owner_id": 1,
        "userRole": null,
        "created_at": "2026-05-18T11:18:24.000000Z",
        "deleted_at": null,
        "is_trashed": false,
        "updated_at": "2026-05-18T11:18:42.000000Z",
        "description": null,
        "total_amount": 5000,
        "ending_balance": 4950,
        "total_expenses": 50
    },
    "message": "Budget hidden successfully",
    "success": true
}
DELETE /api/v1/mobile/budgets/1

Delete Budget

Delete a Budget.

Deletes the specified Budget from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Budget deleted successfully.",
    "success": true
}
POST /api/v1/mobile/budgets/1/restore

Restore Budget

Restore deleted Budget.

Restore a previously deleted Budget record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Trip Budget Doc",
        "type": "one_time",
        "status": "hidden",
        "currency": "SAR",
        "owner_id": 1,
        "userRole": null,
        "created_at": "2026-05-18T11:18:24.000000Z",
        "deleted_at": null,
        "is_trashed": false,
        "updated_at": "2026-05-18T11:18:57.000000Z",
        "description": null,
        "total_amount": 5000,
        "ending_balance": 4400,
        "total_expenses": 600
    },
    "message": "Budget restored successfully",
    "success": true
}
POST /api/v1/mobile/budgets/1/transactions/income

Add Income

Record income.

Directly record an income transaction. This is a helper endpoint that forces the transaction type to income.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
amount integer 500

Request Validations Or Notes

Field/Name Examples
type optional, allowed: income, expense
amount required, numeric, min 0.01
description optional, string, max 255
category optional, string, max 50
account optional, string, max 100
date optional, date
time optional, date_format
additionalDate optional, date
photo optional, string
Success (200 OK)
{
    "data": {
        "transaction": {
            "id": 2,
            "type": "income",
            "photo": null,
            "amount": 500,
            "account": null,
            "category": null,
            "budget_id": "1",
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:25.000000Z",
            "description": null,
            "creation_date": "2026-05-18",
            "creation_time": "11:18",
            "additional_date": null
        },
        "newEndingBalance": 5500
    },
    "message": "Income recorded successfully",
    "success": true
}
POST /api/v1/mobile/budgets/1/transactions/expense

Add Expense

Record expense.

Directly record an expense transaction. This is a helper endpoint that forces the transaction type to expense.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
date string 2026-05-18
time string 11:46
amount integer 50
category string Food
description string Buying milk and eggs

Request Validations Or Notes

Field/Name Examples
type optional, allowed: income, expense
amount required, numeric, min 0.01
description optional, string, max 255
category optional, string, max 50
account optional, string, max 100
date optional, date
time optional, date_format
additionalDate optional, date
photo optional, string
Success (200 OK)
{
    "data": {
        "transaction": {
            "id": 3,
            "type": "expense",
            "photo": null,
            "amount": 50,
            "account": null,
            "category": "Food",
            "budget_id": "1",
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:25.000000Z",
            "description": "Buying milk and eggs",
            "creation_date": "2026-05-18",
            "creation_time": "11:46",
            "additional_date": null
        },
        "newEndingBalance": 5450
    },
    "message": "Expense recorded successfully",
    "success": true
}
GET /api/v1/mobile/budgets/1/transactions

List Transactions

List budget history.

Retrieves a list of transactions for a specific budget. Supports date range filtering, category filtering, and listing trashed transactions.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "type": "expense",
            "photo": null,
            "amount": 50,
            "account": null,
            "category": "Food",
            "budget_id": 1,
            "created_at": "2026-05-18T11:18:24.000000Z",
            "updated_at": "2026-05-18T11:18:24.000000Z",
            "description": "Initial Expense",
            "creation_date": "2026-05-18",
            "creation_time": null,
            "additional_date": null
        },
        {
            "id": 2,
            "type": "income",
            "photo": null,
            "amount": 500,
            "account": null,
            "category": null,
            "budget_id": 1,
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:25.000000Z",
            "description": null,
            "creation_date": "2026-05-18",
            "creation_time": "11:18:00",
            "additional_date": null
        },
        {
            "id": 3,
            "type": "expense",
            "photo": null,
            "amount": 50,
            "account": null,
            "category": "Food",
            "budget_id": 1,
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:25.000000Z",
            "description": "Buying milk and eggs",
            "creation_date": "2026-05-18",
            "creation_time": "11:46:00",
            "additional_date": null
        }
    ],
    "message": "Transactions retrieved",
    "success": true,
    "summary": {
        "totalIncome": 500,
        "totalExpenses": 100
    },
    "pagination": {
        "total": 3,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/mobile/budgets/1/transactions/3

Transaction Details

Reveal transaction info.

View details of a specific transaction.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "createdBy": "Updated User Name",
        "transaction": {
            "id": 3,
            "type": "expense",
            "photo": null,
            "amount": "50.00",
            "account": null,
            "category": "Food",
            "budget_id": 1,
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:25.000000Z",
            "description": "Buying milk and eggs",
            "creation_date": "2026-05-18",
            "creation_time": "11:46:00",
            "additional_date": null
        }
    },
    "message": "Transaction details retrieved",
    "success": true
}
PUT /api/v1/mobile/budgets/1/transactions/3

Update Transaction

Edit transaction.

Update transaction details.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
amount integer 600
description string Buying organic milk

Request Validations Or Notes

Field/Name Examples
amount sometimes, required, numeric, min 0.01
description optional, string, max 255
category optional, string, max 50
account optional, string, max 100
date sometimes, required, date
Success (200 OK)
{
    "data": {
        "transaction": {
            "id": 3,
            "type": "expense",
            "photo": null,
            "amount": 600,
            "account": null,
            "category": "Food",
            "budget_id": "1",
            "created_at": "2026-05-18T11:18:25.000000Z",
            "updated_at": "2026-05-18T11:18:42.000000Z",
            "description": "Buying organic milk",
            "creation_date": "2026-05-18",
            "creation_time": "11:46:00",
            "additional_date": null
        },
        "updatedBudgetSummary": {
            "totalAmount": 5000,
            "endingBalance": 4400,
            "totalExpenses": 600
        }
    },
    "message": "Transaction updated successfully",
    "success": true
}
DELETE /api/v1/mobile/budgets/1/transactions/3

Delete Transaction

Delete transaction.

Remove a transaction from the budget.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
null
POST /api/v1/mobile/budgets/1/split

Split Budget

Divide costs with others.

Distribute the budget total amount among multiple users as allocations.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
splits array [{"amount":2500,"userId":4,"percentage":50},{"amount":2500,"userId":1,"percentage":50}]

Request Validations Or Notes

Field/Name Examples
splits required, array, min 1
splits[].userId optional, exists users,id
splits[].amount required, numeric, min 0
splits[].percentage required, numeric, min 0, max 100
Success (200 OK)
{
    "data": {
        "splits": [
            {
                "id": 1,
                "user": {
                    "id": 4,
                    "name": "John Doe",
                    "email": "user2@demo.com",
                    "phone": "01211172289",
                    "avatar": null,
                    "is_active": true,
                    "created_at": "2026-05-18T11:18:24.000000Z",
                    "deleted_at": null,
                    "updated_at": "2026-05-18T11:18:24.000000Z",
                    "postal_code": null,
                    "main_address": null,
                    "last_login_at": null,
                    "phone_verified_at": null,
                    "change_password_token": null,
                    "change_password_expired_at": null
                },
                "amount": "2500.00",
                "user_id": 4,
                "budget_id": 1,
                "created_at": "2026-05-18T11:18:26.000000Z",
                "percentage": "50.00",
                "updated_at": "2026-05-18T11:18:26.000000Z"
            },
            {
                "id": 2,
                "user": {
                    "id": 1,
                    "name": "Updated User Name",
                    "email": "updated_email@example.com",
                    "phone": "01011113333",
                    "avatar": "",
                    "is_active": true,
                    "created_at": "2026-05-18T11:18:10.000000Z",
                    "deleted_at": null,
                    "updated_at": "2026-05-18T11:18:15.000000Z",
                    "postal_code": null,
                    "main_address": null,
                    "last_login_at": null,
                    "phone_verified_at": null,
                    "change_password_token": null,
                    "change_password_expired_at": null
                },
                "amount": "2500.00",
                "user_id": 1,
                "budget_id": 1,
                "created_at": "2026-05-18T11:18:26.000000Z",
                "percentage": "50.00",
                "updated_at": "2026-05-18T11:18:26.000000Z"
            }
        ],
        "totalAmount": 5000
    },
    "message": "Splits updated successfully",
    "success": true
}
GET /api/v1/mobile/budgets/1/split

View Splits

View split info.

View how a specific budget is divided among collaborators.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "budget": {
            "id": 1,
            "name": "Trip Budget Doc",
            "type": "one_time",
            "status": "active",
            "currency": "SAR",
            "owner_id": 1,
            "userRole": "owner",
            "created_at": "2026-05-18T11:18:24.000000Z",
            "deleted_at": null,
            "updated_at": "2026-05-18T11:18:26.000000Z",
            "description": null,
            "total_amount": 5000,
            "ending_balance": 4950,
            "total_expenses": 50
        },
        "splits": [
            {
                "id": 1,
                "user": {
                    "id": 4,
                    "name": "John Doe",
                    "email": "user2@demo.com",
                    "phone": "01211172289",
                    "avatar": null,
                    "is_active": true,
                    "created_at": "2026-05-18T11:18:24.000000Z",
                    "deleted_at": null,
                    "updated_at": "2026-05-18T11:18:24.000000Z",
                    "postal_code": null,
                    "main_address": null,
                    "last_login_at": null,
                    "phone_verified_at": null,
                    "change_password_token": null,
                    "change_password_expired_at": null
                },
                "amount": "2500.00",
                "user_id": 4,
                "budget_id": 1,
                "created_at": "2026-05-18T11:18:26.000000Z",
                "percentage": "50.00",
                "updated_at": "2026-05-18T11:18:26.000000Z"
            },
            {
                "id": 2,
                "user": {
                    "id": 1,
                    "name": "Updated User Name",
                    "email": "updated_email@example.com",
                    "phone": "01011113333",
                    "avatar": "",
                    "is_active": true,
                    "created_at": "2026-05-18T11:18:10.000000Z",
                    "deleted_at": null,
                    "updated_at": "2026-05-18T11:18:15.000000Z",
                    "postal_code": null,
                    "main_address": null,
                    "last_login_at": null,
                    "phone_verified_at": null,
                    "change_password_token": null,
                    "change_password_expired_at": null
                },
                "amount": "2500.00",
                "user_id": 1,
                "budget_id": 1,
                "created_at": "2026-05-18T11:18:26.000000Z",
                "percentage": "50.00",
                "updated_at": "2026-05-18T11:18:26.000000Z"
            }
        ],
        "isComplete": true,
        "totalAmount": 5000
    },
    "message": "Split details retrieved",
    "success": true
}
POST /api/v1/mobile/splits/1/settle

Settle Split

Settle debt.

Mark a split allocation as settled.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "settled": true
    },
    "message": "Split settled successfully",
    "success": true
}
GET /api/v1/mobile/asset-folders

Get AssetFolder List

Retrieve a list of AssetFolder.

Retrieves a list of AssetFolder records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Documentation Folder",
            "active": true,
            "created_at": "2026-05-18",
            "cover_photo": null,
            "total_price": 0,
            "documents_count": 1
        }
    ],
    "message": "Folders retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
POST /api/v1/mobile/asset-folders

Create AssetFolder

Create a new AssetFolder.

Creates a new AssetFolder in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Legal Documents
cover_photo NULL
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Legal Documents",
        "active": true,
        "documents": [],
        "created_at": "2026-05-18",
        "cover_photo": null,
        "total_price": 0,
        "documents_count": 0
    },
    "message": "Folder created successfully.",
    "success": true
}
GET /api/v1/mobile/asset-folders/1

Get AssetFolder Details

Retrieve AssetFolder details.

Retrieves detailed information about a specific AssetFolder using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Documentation Folder",
        "active": true,
        "documents": [
            {
                "id": 1,
                "name": "Sample Contract",
                "value": null,
                "active": true,
                "photos": [],
                "currency": null,
                "end_date": null,
                "reminder": null,
                "documents": [],
                "created_at": "2026-05-18",
                "start_date": null,
                "description": null,
                "asset_folder_id": 1
            },
            {
                "id": 2,
                "name": "Employment Contract",
                "value": "5000.00",
                "active": true,
                "photos": [],
                "currency": "USD",
                "end_date": "2026-01-01",
                "reminder": 30,
                "documents": [],
                "created_at": "2026-05-18",
                "start_date": "2025-01-01",
                "description": "Signed on Jan 2025",
                "asset_folder_id": 1
            }
        ],
        "created_at": "2026-05-18",
        "cover_photo": null,
        "total_price": 5000,
        "documents_count": 2
    },
    "message": "Folder retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/asset-folders/1

Update AssetFolder

Update an existing AssetFolder.

Updates the specified AssetFolder with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Updated Folder Title
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Updated Folder Title",
        "active": true,
        "documents": [
            {
                "id": 1,
                "name": "Sample Contract",
                "value": null,
                "active": true,
                "photos": [],
                "currency": null,
                "end_date": null,
                "reminder": null,
                "documents": [],
                "created_at": "2026-05-18",
                "start_date": null,
                "description": null,
                "asset_folder_id": 1
            },
            {
                "id": 2,
                "name": "Employment Contract",
                "value": "5000.00",
                "active": true,
                "photos": [],
                "currency": "USD",
                "end_date": "2026-01-01",
                "reminder": 30,
                "documents": [],
                "created_at": "2026-05-18",
                "start_date": "2025-01-01",
                "description": "Signed on Jan 2025",
                "asset_folder_id": 1
            }
        ],
        "created_at": "2026-05-18",
        "cover_photo": null,
        "total_price": 5000,
        "documents_count": 2
    },
    "message": "Folder updated successfully.",
    "success": true
}
DELETE /api/v1/mobile/asset-folders/1

Delete AssetFolder

Delete a AssetFolder.

Deletes the specified AssetFolder from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Folder deleted successfully.",
    "success": true
}
POST /api/v1/mobile/asset-folders/2/restore

Restore AssetFolder

Restore deleted AssetFolder.

Restore a previously deleted AssetFolder record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Legal Documents",
        "active": true,
        "documents": [],
        "created_at": "2026-05-18",
        "cover_photo": null,
        "total_price": 0,
        "documents_count": 0
    },
    "message": "Folder restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/asset-folders/2/force

Permanently Delete AssetFolder

Force delete AssetFolder.

Permanently remove the AssetFolder record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Folder permanently deleted.",
    "success": true
}
GET /api/v1/mobile/asset-docs

Get AssetDoc List

Retrieve a list of AssetDoc.

Retrieves a list of AssetDoc records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Sample Contract",
            "value": null,
            "active": true,
            "photos": [],
            "currency": null,
            "end_date": null,
            "reminder": null,
            "documents": [],
            "created_at": "2026-05-18",
            "start_date": null,
            "description": null,
            "asset_folder_id": 1
        }
    ],
    "message": "Documents retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 1,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
POST /api/v1/mobile/asset-docs

Create AssetDoc

Create a new AssetDoc.

Creates a new AssetDoc in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Employment Contract
value integer 5000
currency string USD
end_date string 2026-01-01
reminder integer 30
start_date string 2025-01-01
description string Signed on Jan 2025
document_files NULL
asset_folder_id integer 1

Request Validations Or Notes

Field/Name Examples
asset_folder_id optional, exists asset_folders,id
name required, string, max 255
description optional, string
start_date optional, date
end_date optional, date
reminder optional, integer, min 0
value optional, numeric, min 0
currency optional, string, max 10
photos_files optional, array
photos_files[] image, max 5120
document_files optional, array
document_files[] image, max 5120
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Employment Contract",
        "value": "5000.00",
        "active": true,
        "photos": [],
        "currency": "USD",
        "end_date": "2026-01-01",
        "reminder": 30,
        "documents": [],
        "created_at": "2026-05-18",
        "start_date": "2025-01-01",
        "description": "Signed on Jan 2025",
        "asset_folder_id": 1
    },
    "message": "Document created successfully.",
    "success": true
}
POST /api/v1/mobile/asset-docs/move

Move Documents

Bulk move documents.

Move one or more documents to a different folder.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
document_ids array [1]
target_folder_id integer 1
Success (200 OK)
{
    "data": [],
    "message": "Documents moved successfully.",
    "success": true
}
GET /api/v1/mobile/asset-docs/2

Get AssetDoc Details

Retrieve AssetDoc details.

Retrieves detailed information about a specific AssetDoc using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Employment Contract",
        "value": "5000.00",
        "active": true,
        "photos": [],
        "currency": "USD",
        "end_date": "2026-01-01",
        "reminder": 30,
        "documents": [],
        "created_at": "2026-05-18",
        "start_date": "2025-01-01",
        "description": "Signed on Jan 2025",
        "asset_folder_id": 1
    },
    "message": "Document retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/asset-docs/2

Update AssetDoc

Update an existing AssetDoc.

Updates the specified AssetDoc with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Contract V2
document_files NULL

Request Validations Or Notes

Field/Name Examples
asset_folder_id sometimes, exists asset_folders,id
name sometimes, string, max 255
description optional, string
start_date optional, date
end_date optional, date
reminder optional, integer, min 0
value optional, numeric, min 0
currency optional, string, max 10
photos_files optional, array
photos_files[] image, max 5120
document_files optional, array
document_files[] image, max 5120
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Contract V2",
        "value": "5000.00",
        "active": true,
        "photos": [],
        "currency": "USD",
        "end_date": "2026-01-01",
        "reminder": 30,
        "documents": [],
        "created_at": "2026-05-18",
        "start_date": "2025-01-01",
        "description": "Signed on Jan 2025",
        "asset_folder_id": 1
    },
    "message": "Document updated successfully.",
    "success": true
}
DELETE /api/v1/mobile/asset-docs/2

Delete AssetDoc

Delete a AssetDoc.

Deletes the specified AssetDoc from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Document deleted successfully.",
    "success": true
}
POST /api/v1/mobile/asset-docs/1/restore

Restore AssetDoc

Restore deleted AssetDoc.

Restore a previously deleted AssetDoc record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Sample Contract",
        "value": null,
        "active": true,
        "photos": [],
        "currency": null,
        "end_date": null,
        "reminder": null,
        "documents": [],
        "created_at": "2026-05-18",
        "start_date": null,
        "description": null,
        "asset_folder_id": 1
    },
    "message": "Document restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/asset-docs/1/force

Permanently Delete AssetDoc

Force delete AssetDoc.

Permanently remove the AssetDoc record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Document permanently deleted.",
    "success": true
}
POST /api/v1/mobile/help-support/faqs

Create Faq

Create a new Faq.

Creates a new Faq in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
answer array {"ar":"\u0625\u062c\u0627\u0628\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629","en":"Test answer"}
question array {"ar":"\u0633\u0624\u0627\u0644 \u062a\u062c\u0631\u064a\u0628\u064a ORlVVKdt","en":"Test question ORlVVKdt"}
is_active integer 1

Request Validations Or Notes

Field/Name Examples
question.ar required, ArabicFaqQuestion
question.en required, EnglishFaqQuestion
answer.ar optional, ArabicFaqAnswer
answer.en optional, EnglishFaqAnswer
is_active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 3,
        "is_active": 1,
        "created_at": "2026-05-18T11:18:30.000000Z",
        "updated_at": "2026-05-18T11:18:30.000000Z"
    },
    "message": "Data inserted successfully.",
    "success": true
}
GET /api/v1/mobile/help-support/faqs

Get Faq List

Retrieve a list of Faq.

Retrieves a list of Faq records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "answer": "",
            "question": "",
            "is_active": 1,
            "created_at": "2026-05-18T11:18:30.000000Z"
        },
        {
            "id": 3,
            "answer": "Test answer",
            "question": "Test question ORlVVKdt",
            "is_active": 1,
            "created_at": "2026-05-18T11:18:30.000000Z"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "count": 2,
        "total": 2,
        "per_page": 10,
        "total_pages": 1,
        "current_page": 1
    }
}
POST /api/v1/mobile/help-support/faqs/search

Search FAQs

Search FAQs.

Search FAQs using a keyword.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
search string test
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "answer": "",
            "question": "",
            "is_active": 1,
            "created_at": "2026-05-18T11:18:30.000000Z"
        },
        {
            "id": 3,
            "answer": "Test answer",
            "question": "Test question ORlVVKdt",
            "is_active": 1,
            "created_at": "2026-05-18T11:18:30.000000Z"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "count": 2,
        "total": 2,
        "per_page": 10,
        "total_pages": 1,
        "current_page": 1
    }
}
GET /api/v1/mobile/help-support/faqs/1

Get Faq Details

Retrieve Faq details.

Retrieves detailed information about a specific Faq using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "answer": "",
        "question": "",
        "is_active": 1,
        "created_at": "2026-05-18T11:18:30.000000Z"
    },
    "message": "Data retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/help-support/faqs/1

Update Faq

Update an existing Faq.

Updates the specified Faq with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
id integer 1
answer array {"ar":"\u0625\u062c\u0627\u0628\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629","en":"Test answer"}
question array {"ar":"\u0633\u0624\u0627\u0644 \u062a\u062c\u0631\u064a\u0628\u064a zMwZcxAL","en":"Updated question zMwZcxAL"}
is_active integer 1

Request Validations Or Notes

Field/Name Examples
id required, exists Faq,id
question.ar required, ArabicFaqQuestion
question.en required, EnglishFaqQuestion
answer.ar optional, ArabicFaqAnswer
answer.en optional, EnglishFaqAnswer
is_active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 1,
        "is_active": 1,
        "created_at": "2026-05-18T11:18:30.000000Z",
        "deleted_at": null,
        "updated_at": "2026-05-18T11:18:30.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
PATCH /api/v1/mobile/help-support/faqs/1/toggle-active

Toggle Faq Status

Switch the Faq status between active and inactive.

Updates the status of the specified Faq by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "answer": "Test answer",
        "question": "Updated question zMwZcxAL",
        "is_active": false,
        "created_at": "2026-05-18T11:18:30.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/mobile/help-support/faqs/1

Delete Faq

Delete a Faq.

Deletes the specified Faq from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/mobile/help-support/faqs/trash

Get Deleted Faq

List deleted Faq.

Retrieve a list of soft-deleted Faq records from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 3,
            "answer": "Test answer",
            "question": "Test question ORlVVKdt",
            "is_active": 1,
            "created_at": "2026-05-18T11:18:30.000000Z"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "count": 1,
        "total": 1,
        "per_page": 10,
        "total_pages": 1,
        "current_page": 1
    }
}
PATCH /api/v1/mobile/help-support/faqs/1/restore

Restore Faq

Restore deleted Faq.

Restore a previously deleted Faq record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/help-support/faqs/1/force-delete

Permanently Delete Faq

Force delete Faq.

Permanently remove the Faq record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
POST /api/v1/categories

Create Category

Create a new Category.

Creates a new Category in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
icon string icon-yHeBIiGs.png
name array {"ar":"\u062a\u0635\u0646\u064a\u0641 \u062a\u062c\u0631\u064a\u0628\u064a yHeBIiGs","en":"Test Category yHeBIiGs"}
status integer 1
valuers integer 10
service_no integer 1
description array {"ar":"\u0648\u0635\u0641 \u062a\u062c\u0631\u064a\u0628\u064a","en":"Test description"}

Request Validations Or Notes

Field/Name Examples
name.ar required, ArabicCategoryName
name.en required, EnglishCategoryName
description.ar optional, ArabicCategoryDescription
description.en optional, EnglishCategoryDescription
icon string, max 255
service_no optional, integer
valuers optional, integer
status optional, true/false
Success (200 OK)
{
    "data": {
        "id": 3,
        "icon": "icon-yHeBIiGs.png",
        "status": 1,
        "valuers": 10,
        "created_at": "2026-05-18T11:18:31.000000Z",
        "service_no": 1,
        "updated_at": "2026-05-18T11:18:31.000000Z"
    },
    "message": "Data inserted successfully.",
    "success": true
}
GET /api/v1/categories

Get Category List

Retrieve a list of Category.

Retrieves a list of Category records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "icon": "test-icon.png",
            "name": "",
            "status": 1,
            "valuers": 1,
            "created_at": "2026-05-18T11:18:31.000000Z",
            "service_no": 1,
            "description": ""
        },
        {
            "id": 3,
            "icon": "icon-yHeBIiGs.png",
            "name": "Test Category yHeBIiGs",
            "status": 1,
            "valuers": 10,
            "created_at": "2026-05-18T11:18:31.000000Z",
            "service_no": 1,
            "description": "Test description"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 2,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/categories/1

Get Category Details

Retrieve Category details.

Retrieves detailed information about a specific Category using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "icon": "test-icon.png",
        "name": "",
        "status": 1,
        "valuers": 1,
        "created_at": "2026-05-18T11:18:31.000000Z",
        "service_no": 1,
        "description": ""
    },
    "message": "Data retrieved successfully.",
    "success": true
}
PUT /api/v1/categories/1

Update Category

Update an existing Category.

Updates the specified Category with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
id integer 1
icon string icon-upd-cepkivYT.png
name array {"ar":"\u062a\u0635\u0646\u064a\u0641 \u062a\u062c\u0631\u064a\u0628\u064a cepkivYT","en":"Test Category cepkivYT"}
status integer 1
valuers integer 10
service_no integer 1
description array {"ar":"\u0648\u0635\u0641 \u062a\u062c\u0631\u064a\u0628\u064a","en":"Test description"}

Request Validations Or Notes

Field/Name Examples
id required, exists categories,id
name.ar required, ArabicCategoryName
name.en required, EnglishCategoryName
description.ar optional, ArabicCategoryDescription
description.en optional, EnglishCategoryDescription
icon string, max 255
service_no optional, integer
valuers optional, integer
status optional, true/false
Success (200 OK)
{
    "data": {
        "id": 1,
        "icon": "icon-upd-cepkivYT.png",
        "status": 1,
        "valuers": 10,
        "created_at": "2026-05-18T11:18:31.000000Z",
        "deleted_at": null,
        "service_no": 1,
        "updated_at": "2026-05-18T11:18:48.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
PATCH /api/v1/categories/1/toggle-active

Toggle Category Status

Switch the Category status between active and inactive.

Updates the status of the specified Category by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "icon": "icon-upd-cepkivYT.png",
        "name": "Test Category cepkivYT",
        "status": false,
        "valuers": 10,
        "created_at": "2026-05-18T11:18:31.000000Z",
        "service_no": 1,
        "description": "Test description"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/categories/1

Delete Category

Delete a Category.

Deletes the specified Category from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/categories/trash

Get Deleted Category

List deleted Category.

Retrieve a list of soft-deleted Category records from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "icon": "icon-upd-cepkivYT.png",
            "name": "Test Category cepkivYT",
            "status": 0,
            "valuers": 10,
            "created_at": "2026-05-18T11:18:31.000000Z",
            "service_no": 1,
            "description": "Test description"
        },
        {
            "id": 2,
            "icon": "trashed-icon.png",
            "name": "",
            "status": 1,
            "valuers": 2,
            "created_at": "2026-05-18T11:18:31.000000Z",
            "service_no": 2,
            "description": ""
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 2,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
PATCH /api/v1/categories/1/restore

Restore Category

Restore deleted Category.

Restore a previously deleted Category record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data restored successfully.",
    "success": true
}
DELETE /api/v1/categories/1/force-delete

Permanently Delete Category

Force delete Category.

Permanently remove the Category record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
POST /api/v1/pages/about_us_b2OHOC8N

Create Static_page

Create a new Static_page.

Creates a new Static_page in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name array {"ar":"\u0635\u0641\u062d\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629 b2OHOC8N","en":"Test Page b2OHOC8N"}
type string about_us_b2OHOC8N
content array {"ar":"\u0645\u062d\u062a\u0648\u0649 \u062a\u062c\u0631\u064a\u0628\u064a","en":"Test content"}
is_active integer 1

Request Validations Or Notes

Field/Name Examples
name.ar required, ArabicStaticPageName
name.en required, EnglishStaticPageName
content.ar required, ArabicStaticPageContent
content.en required, EnglishStaticPageContent
type optional, string, max 255
is_active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 3,
        "name": "Test Page b2OHOC8N",
        "content": "Test content",
        "is_active": true,
        "created_at": "2026-05-18T11:18:33.000000Z"
    },
    "message": "Data inserted successfully.",
    "success": true
}
GET /api/v1/pages/about_us

Get Static_page List

Retrieve a list of Static_page.

Retrieves a list of Static_page records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "",
            "content": "",
            "is_active": true,
            "created_at": "2026-05-18T11:18:33.000000Z"
        },
        {
            "id": 3,
            "name": "Test Page b2OHOC8N",
            "content": "Test content",
            "is_active": true,
            "created_at": "2026-05-18T11:18:33.000000Z"
        }
    ],
    "message": "Data retrieved successfully.",
    "success": true,
    "pagination": {
        "total": 2,
        "per_page": 10,
        "last_page": 1,
        "current_page": 1
    }
}
GET /api/v1/pages/about_us/1

Get Static_page Details

Retrieve Static_page details.

Retrieves detailed information about a specific Static_page using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "",
        "content": "",
        "is_active": true,
        "created_at": "2026-05-18T11:18:33.000000Z"
    },
    "message": "Data retrieved successfully.",
    "success": true
}
PUT /api/v1/pages/about_us/1

Update Static_page

Update an existing Static_page.

Updates the specified Static_page with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
id integer 1
name array {"ar":"\u0635\u0641\u062d\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629 hOzWh6vL","en":"Updated Page hOzWh6vL"}
type string about_us_hOzWh6vL
content array {"ar":"\u0645\u062d\u062a\u0648\u0649 \u062a\u062c\u0631\u064a\u0628\u064a","en":"Updated content"}
is_active integer 1

Request Validations Or Notes

Field/Name Examples
id required, exists static_pages,id
name.ar required, ArabicStaticPageName
name.en required, EnglishStaticPageName
content.ar required, ArabicStaticPageContent
content.en required, EnglishStaticPageContent
type optional, string, max 255
is_active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 1,
        "is_active": 1,
        "translate": [
            {
                "id": 3,
                "lang": "ar",
                "name": "صفحة تجريبية hOzWh6vL",
                "content": "محتوى تجريبي",
                "created_at": "2026-05-18T11:18:50.000000Z",
                "deleted_at": null,
                "updated_at": "2026-05-18T11:18:50.000000Z",
                "static_page_id": 1
            },
            {
                "id": 4,
                "lang": "en",
                "name": "Updated Page hOzWh6vL",
                "content": "Updated content",
                "created_at": "2026-05-18T11:18:50.000000Z",
                "deleted_at": null,
                "updated_at": "2026-05-18T11:18:50.000000Z",
                "static_page_id": 1
            }
        ],
        "created_at": "2026-05-18T11:18:33.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
PATCH /api/v1/pages/1/toggle-active

Toggle Static_page Status

Switch the Static_page status between active and inactive.

Updates the status of the specified Static_page by toggling it between active and inactive. This operation allows enabling or disabling the resource without deleting it from the system.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "is_active": false,
        "translate": [
            {
                "id": 3,
                "lang": "ar",
                "name": "صفحة تجريبية hOzWh6vL",
                "content": "محتوى تجريبي",
                "created_at": "2026-05-18T11:18:50.000000Z",
                "deleted_at": null,
                "updated_at": "2026-05-18T11:18:50.000000Z",
                "static_page_id": 1
            },
            {
                "id": 4,
                "lang": "en",
                "name": "Updated Page hOzWh6vL",
                "content": "Updated content",
                "created_at": "2026-05-18T11:18:50.000000Z",
                "deleted_at": null,
                "updated_at": "2026-05-18T11:18:50.000000Z",
                "static_page_id": 1
            }
        ],
        "created_at": "2026-05-18T11:18:33.000000Z"
    },
    "message": "Data updated successfully.",
    "success": true
}
DELETE /api/v1/pages/6/force-delete

Permanently Delete Static_page

Force delete Static_page.

Permanently remove the Static_page record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Data deleted successfully.",
    "success": true
}
GET /api/v1/mobile/business-card-groups

Get Business-card-group List

Retrieve a list of Business-card-group.

Retrieves a list of Business-card-group records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Work Contacts",
            "active": true,
            "created_at": "2026-05-18",
            "contacts_count": 0
        }
    ],
    "message": "Groups retrieved successfully.",
    "success": true
}
POST /api/v1/mobile/business-card-groups

Create Business-card-group

Create a new Business-card-group.

Creates a new Business-card-group in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Family
active boolean 1

Request Validations Or Notes

Field/Name Examples
name required, string, max 255
active optional, true/false
contact_ids optional, array
contact_ids[] exists business_card_contacts,id
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Family",
        "active": true,
        "created_at": "2026-05-18",
        "contacts_count": 0
    },
    "message": "Group created successfully.",
    "success": true
}
GET /api/v1/mobile/business-card-groups/1

Get Business-card-group Details

Retrieve Business-card-group details.

Retrieves detailed information about a specific Business-card-group using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Work Contacts",
        "active": true,
        "created_at": "2026-05-18",
        "contacts_count": 2
    },
    "message": "Group retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/business-card-groups/1

Update Business-card-group

Update an existing Business-card-group.

Updates the specified Business-card-group with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Updated Group Name

Request Validations Or Notes

Field/Name Examples
name required, string, max 255
active optional, true/false
contact_ids optional, array
contact_ids[] exists business_card_contacts,id
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Updated Group Name",
        "active": true,
        "created_at": "2026-05-18",
        "contacts_count": 2
    },
    "message": "Group updated successfully.",
    "success": true
}
DELETE /api/v1/mobile/business-card-groups/1

Delete Business-card-group

Delete a Business-card-group.

Deletes the specified Business-card-group from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Group deleted successfully.",
    "success": true
}
POST /api/v1/mobile/business-card-groups/2/restore

Restore Business-card-group

Restore deleted Business-card-group.

Restore a previously deleted Business-card-group record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Family",
        "active": true,
        "created_at": "2026-05-18",
        "contacts_count": 0
    },
    "message": "Group restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/business-card-groups/2/force

Permanently Delete Business-card-group

Force delete Business-card-group.

Permanently remove the Business-card-group record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Group permanently deleted.",
    "success": true
}
GET /api/v1/mobile/business-card-contacts

Get Business-card-contact List

Retrieve a list of Business-card-contact.

Retrieves a list of Business-card-contact records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "Jane Smith",
            "email": "jane.smith@techcorp.com",
            "notes": null,
            "phone": "+966501234567",
            "active": true,
            "company": "Tech Corp",
            "website": "https:\/\/techcorp.com",
            "group_id": 1,
            "job_title": "Software Engineer",
            "back_image": null,
            "created_at": "2026-05-18",
            "front_image": null
        }
    ],
    "message": "Contacts retrieved successfully.",
    "success": true
}
POST /api/v1/mobile/business-card-contacts

Create Business-card-contact

Create a new Business-card-contact.

Creates a new Business-card-contact in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Ali Hassan
email string ali.hassan@devstudio.com
notes string Met at a conference
phone string +966512345678
active boolean 1
company string Dev Studio
website string https://devstudio.com
group_id integer 1
job_title string Backend Developer

Request Validations Or Notes

Field/Name Examples
group_id optional, exists business_card_groups,id
name required, string, max 255
job_title required, string, max 255
company required, string, max 255
phone required, string, max 20
email required, valid email, max 255
website optional, url, max 255
front_image optional, image, max 5120
back_image optional, image, max 5120
notes optional, string
active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Ali Hassan",
        "email": "ali.hassan@devstudio.com",
        "notes": "Met at a conference",
        "phone": "+966512345678",
        "active": true,
        "company": "Dev Studio",
        "website": "https:\/\/devstudio.com",
        "group_id": 1,
        "job_title": "Backend Developer",
        "back_image": null,
        "created_at": "2026-05-18",
        "front_image": null
    },
    "message": "Contact created successfully.",
    "success": true
}
GET /api/v1/mobile/business-card-contacts/2

Get Business-card-contact Details

Retrieve Business-card-contact details.

Retrieves detailed information about a specific Business-card-contact using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Ali Hassan",
        "email": "ali.hassan@devstudio.com",
        "notes": "Met at a conference",
        "phone": "+966512345678",
        "active": true,
        "company": "Dev Studio",
        "website": "https:\/\/devstudio.com",
        "group_id": 1,
        "job_title": "Backend Developer",
        "back_image": null,
        "created_at": "2026-05-18",
        "front_image": null
    },
    "message": "Contact retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/business-card-contacts/2

Update Business-card-contact

Update an existing Business-card-contact.

Updates the specified Business-card-contact with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Ali Updated
email string ali.hassan@devstudio.com
phone string +966512345678
company string Dev Studio
job_title string Senior Dev

Request Validations Or Notes

Field/Name Examples
group_id optional, exists business_card_groups,id
name required, string, max 255
job_title required, string, max 255
company required, string, max 255
phone required, string, max 20
email required, valid email, max 255
website optional, url, max 255
front_image optional, image, max 5120
back_image optional, image, max 5120
notes optional, string
active optional, true/false
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Ali Updated",
        "email": "ali.hassan@devstudio.com",
        "notes": "Met at a conference",
        "phone": "+966512345678",
        "active": true,
        "company": "Dev Studio",
        "website": "https:\/\/devstudio.com",
        "group_id": 1,
        "job_title": "Senior Dev",
        "back_image": null,
        "created_at": "2026-05-18",
        "front_image": null
    },
    "message": "Contact updated successfully.",
    "success": true
}
POST /api/v1/mobile/business-card-contacts/2/add-to-group

Add Contact to Group

Move contact into a group.

Assign a contact to a specific group.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
group_id integer 2
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Ali Updated",
        "email": "ali.hassan@devstudio.com",
        "notes": "Met at a conference",
        "phone": "+966512345678",
        "active": true,
        "company": "Dev Studio",
        "website": "https:\/\/devstudio.com",
        "group_id": 2,
        "job_title": "Senior Dev",
        "back_image": null,
        "created_at": "2026-05-18",
        "front_image": null
    },
    "message": "Contact added to group successfully.",
    "success": true
}
DELETE /api/v1/mobile/business-card-contacts/2

Delete Business-card-contact

Delete a Business-card-contact.

Deletes the specified Business-card-contact from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Contact deleted successfully.",
    "success": true
}
POST /api/v1/mobile/business-card-contacts/1/restore

Restore Business-card-contact

Restore deleted Business-card-contact.

Restore a previously deleted Business-card-contact record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "Jane Smith",
        "email": "jane.smith@techcorp.com",
        "notes": null,
        "phone": "+966501234567",
        "active": true,
        "company": "Tech Corp",
        "website": "https:\/\/techcorp.com",
        "group_id": 1,
        "job_title": "Software Engineer",
        "back_image": null,
        "created_at": "2026-05-18",
        "front_image": null
    },
    "message": "Contact restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/business-card-contacts/1/force

Permanently Delete Business-card-contact

Force delete Business-card-contact.

Permanently remove the Business-card-contact record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Contact permanently deleted.",
    "success": true
}
GET /api/v1/mobile/my-business-cards

Get My-business-card List

Retrieve a list of My-business-card.

Retrieves a list of My-business-card records from the system. The response may support pagination, filtering, and sorting based on the provided request parameters.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [
        {
            "id": 1,
            "name": "John Doe",
            "color": "#1A73E8",
            "email": "john.doe@qeei.com",
            "phone": "+966509876543",
            "photo": null,
            "active": true,
            "company": "QEEI",
            "website": "https:\/\/qeei.com",
            "job_title": "Product Manager",
            "created_at": "2026-05-18",
            "qr_code_value": "qr_code_value"
        }
    ],
    "message": "Business cards retrieved successfully.",
    "success": true
}
POST /api/v1/mobile/my-business-cards

Create My-business-card

Create a new My-business-card.

Creates a new My-business-card in the system using the provided data. The request validates the required fields before storing the resource in the database. Upon successful creation, the system returns the newly created record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string My New Card
color string #E53935
email string cto@qeei.com
phone string +966509990000
active boolean 1
company string QEEI
website string https://qeei.com
job_title string CTO
qr_code_value string sample_qr_value
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "My New Card",
        "color": "#E53935",
        "email": "cto@qeei.com",
        "phone": "+966509990000",
        "photo": null,
        "active": true,
        "company": "QEEI",
        "website": "https:\/\/qeei.com",
        "job_title": "CTO",
        "created_at": "2026-05-18",
        "qr_code_value": "sample_qr_value"
    },
    "message": "Business card created successfully.",
    "success": true
}
GET /api/v1/mobile/my-business-cards/2

Get My-business-card Details

Retrieve My-business-card details.

Retrieves detailed information about a specific My-business-card using its unique identifier.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "My New Card",
        "color": "#E53935",
        "email": "cto@qeei.com",
        "phone": "+966509990000",
        "photo": null,
        "active": true,
        "company": "QEEI",
        "website": "https:\/\/qeei.com",
        "job_title": "CTO",
        "created_at": "2026-05-18",
        "qr_code_value": "sample_qr_value"
    },
    "message": "Business card retrieved successfully.",
    "success": true
}
PUT /api/v1/mobile/my-business-cards/2

Update My-business-card

Update an existing My-business-card.

Updates the specified My-business-card with the provided data. The system validates the request and applies the changes to the existing record.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key

Request Body

Field/Name Type Examples
name string Updated Card Name
color string #43A047
email string cto@qeei.com
phone string +966509990000
company string QEEI
job_title string CTO
qr_code_value string sample_qr_value
Success (200 OK)
{
    "data": {
        "id": 2,
        "name": "Updated Card Name",
        "color": "#43A047",
        "email": "cto@qeei.com",
        "phone": "+966509990000",
        "photo": null,
        "active": true,
        "company": "QEEI",
        "website": "https:\/\/qeei.com",
        "job_title": "CTO",
        "created_at": "2026-05-18",
        "qr_code_value": "sample_qr_value"
    },
    "message": "Business card updated successfully.",
    "success": true
}
DELETE /api/v1/mobile/my-business-cards/2

Delete My-business-card

Delete a My-business-card.

Deletes the specified My-business-card from the system using its unique identifier. Depending on the system configuration, the deletion may be permanent or soft deleted.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Business card deleted successfully.",
    "success": true
}
POST /api/v1/mobile/my-business-cards/1/restore

Restore My-business-card

Restore deleted My-business-card.

Restore a previously deleted My-business-card record from the recycle bin.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": {
        "id": 1,
        "name": "John Doe",
        "color": "#1A73E8",
        "email": "john.doe@qeei.com",
        "phone": "+966509876543",
        "photo": null,
        "active": true,
        "company": "QEEI",
        "website": "https:\/\/qeei.com",
        "job_title": "Product Manager",
        "created_at": "2026-05-18",
        "qr_code_value": "qr_code_value"
    },
    "message": "Business card restored successfully.",
    "success": true
}
DELETE /api/v1/mobile/my-business-cards/1/force

Permanently Delete My-business-card

Force delete My-business-card.

Permanently remove the My-business-card record from the system. This action cannot be undone.

Headers

Field/Name Type Examples
Accept string application/json
X-API-Token string X-API-Token Key
Content-Type string application/json
Authorization string Authorization Key
Success (200 OK)
{
    "data": [],
    "message": "Business card permanently deleted.",
    "success": true
}