MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Generate API token.

Admin

APIs for Admin Management

Roles

APIs for interacting with roles

Show all permissions to specific rule

requires authentication

This endpoint lets you show all permissions to specific rule

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/roles/1/permissions?page=12&per_page=6&filter=non&sort=aut" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1/permissions"
);

const params = {
    "page": "12",
    "per_page": "6",
    "filter": "non",
    "sort": "aut",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 84,
            "name": "Mr. Conner Denesik Sr.",
            "description": "Nihil rem officia quisquam sunt atque. Nulla tenetur placeat ullam ut. Neque voluptatem numquam explicabo quia sequi."
        },
        {
            "id": 83,
            "name": "Ryan Schmeler",
            "description": "Sunt ab culpa accusantium omnis. Sint et libero asperiores accusantium vero. Id enim explicabo voluptatum molestiae dicta impedit."
        },
        {
            "id": 82,
            "name": "Retha Rodriguez",
            "description": "Non accusamus veniam et fugit beatae aliquid omnis tempore. Rerum culpa incidunt sunt itaque. Et quos non culpa nihil repellat qui nemo."
        },
        {
            "id": 81,
            "name": "Glenna Leffler",
            "description": "Sunt itaque assumenda esse quia voluptates. Dolore est occaecati illo."
        },
        {
            "id": 80,
            "name": "Prof. Clay Auer",
            "description": "Et ullam cumque dignissimos voluptatem. In perferendis unde repellat voluptas. Voluptatem blanditiis debitis tempora adipisci ut non."
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/roles/{role_id}/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

role_id   integer   

The ID of the role. Example: 1

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 12

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 6

filter   string  optional  

Field to filter by id,name,description. Example: non

sort   string  optional  

Field to sort items by id,name,description. Example: aut

Edit rule's permissions

requires authentication

This endpoint lets you edit rule's permissions (add,update,delete)

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1/permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"permissionIds\": [
        17
    ]
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1/permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "permissionIds": [
        17
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "The role's permissions updated successfully.",
    "status_code": 200
}
 

Request      

POST api/v1/admin/roles/{role_id}/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

role_id   integer   

The ID of the role. Example: 1

Body Parameters

permissionIds   integer[]  optional  

List of the permissions Ids.

Show All

requires authentication

This endpoint lets you show all roles

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 14,
            "name": "Shawna Rath",
            "description": "Exercitationem repellendus quisquam qui."
        },
        {
            "id": 13,
            "name": "Mrs. Keely Schumm Sr.",
            "description": "Eaque incidunt accusamus vero voluptatem."
        },
        {
            "id": 12,
            "name": "Prof. Keegan Becker",
            "description": "Libero recusandae assumenda facere rerum sit."
        },
        {
            "id": 11,
            "name": "Kira McLaughlin",
            "description": "Magni voluptates vitae quos laudantium eos."
        },
        {
            "id": 10,
            "name": "Ms. Vida Williamson",
            "description": "Sapiente qui id accusamus neque est."
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Add role

requires authentication

This endpoint lets you add role

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"xwwczkxdgmkzsawdsqnnrrlv\",
    \"description\": \"Aut modi vel dolores aspernatur.\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "xwwczkxdgmkzsawdsqnnrrlv",
    "description": "Aut modi vel dolores aspernatur."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 789654419,
        "name": "Name role",
        "description": "Description role"
    },
    "message": "The role added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: xwwczkxdgmkzsawdsqnnrrlv

description   string   

Must not be greater than 255 characters. Example: Aut modi vel dolores aspernatur.

Show specific role

requires authentication

This endpoint lets you show specific role

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/roles/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 12,
        "name": "Lydia Medhurst",
        "description": "Officia et aspernatur assumenda."
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the role. Example: 1

Update specific role

requires authentication

This endpoint lets you update specific role

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"zquphifsjsybjrilzhm\",
    \"description\": \"Qui quidem explicabo ut.\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "zquphifsjsybjrilzhm",
    "description": "Qui quidem explicabo ut."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 7,
        "name": "New Name",
        "description": "New description"
    },
    "message": "The role updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/roles/{id}

PATCH api/v1/admin/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the role. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: zquphifsjsybjrilzhm

description   string  optional  

Must not be greater than 255 characters. Example: Qui quidem explicabo ut.

Delete specific role

requires authentication

This endpoint lets you delete specific role

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/roles/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The role deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/roles/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the role. Example: 1

Users

APIs for user Management

Show all roles to specific user

requires authentication

This endpoint lets you show all roles to specific user

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/users/1/roles?page=3&per_page=8&filter=aut&sort=nemo" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users/1/roles"
);

const params = {
    "page": "3",
    "per_page": "8",
    "filter": "aut",
    "sort": "nemo",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 26,
            "name": "Zella Wuckert MD",
            "description": "Ad non doloribus at libero harum excepturi et."
        },
        {
            "id": 25,
            "name": "Rosa Stark",
            "description": "Nulla ut blanditiis ullam et est."
        },
        {
            "id": 24,
            "name": "Dr. Blake Kunde",
            "description": "Non ut quo similique totam reprehenderit."
        },
        {
            "id": 23,
            "name": "Ransom Crooks",
            "description": "Et facere et voluptatum sit."
        },
        {
            "id": 22,
            "name": "Miss Malika Feest",
            "description": "Id sint cum aut maiores animi."
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/users/{user_id}/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 3

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 8

filter   string  optional  

Field to filter items by id,name,description. Example: aut

sort   string  optional  

Field to sort items by id,name,description. Example: nemo

Edit user's roles

requires authentication

This endpoint lets you edit user's roles (add,update,delete)

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/users/1/roles" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"role_ids\": [
        14
    ]
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users/1/roles"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "role_ids": [
        14
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "role_ids": [
            "The role ids field is required."
        ]
    },
    "message": "The given data was invalid.",
    "status_code": 422
}
 

Request      

POST api/v1/admin/users/{user_id}/roles

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Body Parameters

role_ids   integer[]  optional  

List of the roles Ids.

Show user's profile

requires authentication

This endpoint lets you show user's authenticated profile

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "first_name": "Test1",
        "last_name": "Test1",
        "is_employee": true,
        "phone": "+9639487222",
        "image": "https://dev.almoualemaqare.com/storage/users/bX2TijnU0PrtXARTbVSFsX6dstcWbfvbCqz01K5t.jpg",
        "has_verified_phone": true
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Show all users

requires authentication

This endpoint lets you show all users

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/users?page=16&per_page=5&filter%5Bid%5D=et&filter%5Bname%5D=illo&filter%5Bemail%5D=vel&filter%5Bphone%5D=aut&sort=dignissimos" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users"
);

const params = {
    "page": "16",
    "per_page": "5",
    "filter[id]": "et",
    "filter[name]": "illo",
    "filter[email]": "vel",
    "filter[phone]": "aut",
    "sort": "dignissimos",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 319,
            "first_name": "Matteo King",
            "last_name": "Prof. Estefania McCullough",
            "is_employee": 1,
            "phone": "+18386839692",
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true
        },
        {
            "id": 318,
            "first_name": "Elvie Schuster",
            "last_name": "Rex Waters",
            "is_employee": 1,
            "phone": "+1.661.573.8844",
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true
        },
        {
            "id": 317,
            "first_name": "Anne Raynor",
            "last_name": "Laverna Upton",
            "is_employee": 1,
            "phone": "+13208157561",
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true
        },
        {
            "id": 316,
            "first_name": "Dr. Glen Beahan II",
            "last_name": "Mrs. Maddison Davis",
            "is_employee": 1,
            "phone": "+1-810-530-6451",
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true
        },
        {
            "id": 315,
            "first_name": "Olaf Larkin",
            "last_name": "Miss Verda Orn",
            "is_employee": 1,
            "phone": "+1.312.894.2988",
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true
        }
    ],
    "meta": {
        "pagination": {
            "total": 16,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 16

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 5

filter[id]   string  optional  

Field to filter items by id. Example: et

filter[name]   string  optional  

Field to filter items by name. Example: illo

filter[email]   string  optional  

Field to filter items by email. Example: vel

filter[phone]   string  optional  

Field to filter items by phone. Example: aut

sort   string  optional  

Field to sort items by id,name,email. Example: dignissimos

Add user

requires authentication

This endpoint lets you add user

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/users" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=nyqgzpmyrsjigzoy"\
    --form "last_name=wocybge"\
    --form "is_employee="\
    --form "password=S8!mn=s"\
    --form "image=@/tmp/phpIaJIIN" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'nyqgzpmyrsjigzoy');
body.append('last_name', 'wocybge');
body.append('is_employee', '');
body.append('password', 'S8!mn=s');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 10545,
        "first_name": "Test",
        "last_name": "Test",
        "is_employee": 1,
        "phone": "+963994622354",
        "image": "https://dev.almoualemaqare.com/storage/users/66dd4514ee88b.jpg",
        "has_verified_phone": false
    },
    "message": "The user added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string   

Must not be greater than 255 characters. Example: nyqgzpmyrsjigzoy

last_name   string   

Must not be greater than 255 characters. Example: wocybge

is_employee   boolean   

Example: false

phone   string  optional  
password   string   

Must be at least 6 characters. Example: S8!mn=s

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpIaJIIN

Show specific user

requires authentication

This endpoint lets you show specific user

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/users/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 10540,
        "first_name": "Bridget Altenwerth",
        "last_name": "Reed Rath",
        "is_employee": 1,
        "phone": "+1.405.827.0063",
        "image": "https://dev.almoualemaqare.com/storage/users/user.png",
        "has_verified_phone": true
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user. Example: 1

Update specific user

requires authentication

This endpoint lets you update specific user

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/users/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=jdklmgszvkmb"\
    --form "last_name=hufxfkli"\
    --form "is_employee=1"\
    --form "password=5/CQ\,mZjt83A)@JG4z"\
    --form "image=@/tmp/phpBljioM" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'jdklmgszvkmb');
body.append('last_name', 'hufxfkli');
body.append('is_employee', '1');
body.append('password', '5/CQ\,mZjt83A)@JG4z');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11111168,
        "first_name": "TESTER",
        "last_name": "TESTER",
        "is_employee": 1,
        "phone": "+963994622354",
        "image": "https://dev.almoualemaqare.com/storage/users/66dd451502105.jpg",
        "has_verified_phone": true
    },
    "message": "User's information updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/users/{id}

PATCH api/v1/admin/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user. Example: 1

Body Parameters

first_name   string  optional  

Must not be greater than 255 characters. Example: jdklmgszvkmb

last_name   string  optional  

Must not be greater than 255 characters. Example: hufxfkli

is_employee   boolean  optional  

Example: true

phone   string  optional  
password   string  optional  

Must be at least 6 characters. Example: 5/CQ\,mZjt83A)@JG4z

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpBljioM

Delete specific user

requires authentication

This endpoint lets you user specific user

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/users/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/users/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The user deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user. Example: 1

Contact Us Records

APIs for Contact Us Records Management

Show All Contact Us Records

requires authentication

This endpoint lets you show all contact us records

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/contact_us?page=10&per_page=6&filter%5Bid%5D=illo&filter%5Bsubject%5D=rerum&sort=dolores" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/contact_us"
);

const params = {
    "page": "10",
    "per_page": "6",
    "filter[id]": "illo",
    "filter[subject]": "rerum",
    "sort": "dolores",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "user": {
                "id": 103,
                "name": "Ms. Eleonore Carroll Alexane Kunze IV"
            },
            "phone": "(850) 273-9591",
            "subject": {
                "key": 4,
                "value": "COMPLAINTS"
            },
            "message": "Occaecati nulla natus aspernatur."
        },
        {
            "id": 12,
            "user": {
                "id": 102,
                "name": "Mr. Elian Ward Jennyfer Grant"
            },
            "phone": "417-426-2578",
            "subject": {
                "key": 1,
                "value": "PAYMENT_PROBLEM"
            },
            "message": "Nobis debitis ad magni."
        },
        {
            "id": 11,
            "user": {
                "id": 101,
                "name": "Fredrick Lockman IV Dejuan Flatley V"
            },
            "phone": "+1-631-864-3439",
            "subject": {
                "key": 3,
                "value": "SUGGESTIONS"
            },
            "message": "Cupiditate ut est corporis odit aut error ut non."
        },
        {
            "id": 10,
            "user": {
                "id": 100,
                "name": "Darion DuBuque I Miss Eryn Moen V"
            },
            "phone": "(229) 989-3920",
            "subject": {
                "key": 1,
                "value": "PAYMENT_PROBLEM"
            },
            "message": "Blanditiis numquam ut ad facere ex tempore."
        },
        {
            "id": 9,
            "user": {
                "id": 99,
                "name": "Dr. Enrico Kozey IV Karley Crist IV"
            },
            "phone": "+1.269.487.2180",
            "subject": {
                "key": 4,
                "value": "COMPLAINTS"
            },
            "message": "Sed ab labore quos earum incidunt."
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/contact_us

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 10

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 6

filter[id]   string  optional  

Field to filter items by id. Example: illo

filter[subject]   string  optional  

Field to filter items by subject. Example: rerum

sort   string  optional  

Field to sort items by id. Example: dolores

Show specific contact us record

requires authentication

This endpoint lets you show specific contact us record

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/contact_us/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/contact_us/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "user": {
            "id": 187,
            "name": "Prof. Cleora Schaefer III Damaris Miller"
        },
        "phone": "1-283-527-8082",
        "subject": {
            "key": 4,
            "value": "COMPLAINTS"
        },
        "message": "Aspernatur aut labore quidem ad."
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/contact_us/{contact_us}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contact_us   integer   

Example: 1

Delete Specific Contact Us Record

requires authentication

This endpoint lets you delete specific contact us record

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/contact_us/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/contact_us/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Contact Us Record  deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/contact_us/{contact_us}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contact_us   integer   

Example: 6

Advertisements

APIs for Advertisement Management

Change Advertisement Status

requires authentication

This endpoint lets the admin change the status of a specific advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1/change-status?status=ad" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": 2,
    \"reason\": \"hic\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1/change-status"
);

const params = {
    "status": "ad",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": 2,
    "reason": "hic"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Advertisement Status Changed Successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/advertisements/{advertisement_id}/change-status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

advertisement   string   

The ID of the advertisement. Example: distinctio

Query Parameters

status   string   

The new status value (e.g., 'reject' or 'accept'). Example: ad

Body Parameters

status   integer   

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
reason   string  optional  

Example: hic

Filter advertisements

requires authentication

Filter advertisements based on the provided parameters

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/advertisement?filter%5Btag%5D=quis&filter%5Bproperty_type%5D=eos&filter%5Bbedrooms%5D=sit&filter%5Bprice_range%5D=omnis&filter%5Blocation%5D=vero" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"property_type\": 4,
    \"bedrooms\": 18,
    \"price_range\": 32,
    \"location\": \"hgjmwlrlfqpgakklioweqhqclcjpnwkbgvclijrbgtdiwfjgbzefvsxsydggrnhbednzqpzjjaf\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisement"
);

const params = {
    "filter[tag]": "quis",
    "filter[property_type]": "eos",
    "filter[bedrooms]": "sit",
    "filter[price_range]": "omnis",
    "filter[location]": "vero",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "property_type": 4,
    "bedrooms": 18,
    "price_range": 32,
    "location": "hgjmwlrlfqpgakklioweqhqclcjpnwkbgvclijrbgtdiwfjgbzefvsxsydggrnhbednzqpzjjaf"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "title": "Advertisement Two",
            "description": "This is a test advertisement",
            "image": "https://dev.almoualemaqare.com/storage/advertisements/Lncoc7PAYzy1XPSibyXXpmm9DdfBCCFGTZQuk9dt.jpg"
        }
    ],
    "meta": {
        "pagination": {
            "total": 1,
            "per_page": 15,
            "count": 1,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/advertisement

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

filter[tag]   string  optional  

Field to filter advertisement by tag. Example: quis

filter[property_type]   string  optional  

Field to filter advertisement by property_type. Example: eos

filter[bedrooms]   string  optional  

Field to filter advertisement by bedrooms. Example: sit

filter[price_range]   string  optional  

Field to filter advertisement by price_range. Example: omnis

filter[location]   string  optional  

Field to filter advertisement by location. Example: vero

Body Parameters

property_type   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
bedrooms   integer  optional  

Must be at least 0. Example: 18

price_range   number  optional  

Must be at least 0. Example: 32

location   string  optional  

Must be at least 0 characters. Example: hgjmwlrlfqpgakklioweqhqclcjpnwkbgvclijrbgtdiwfjgbzefvsxsydggrnhbednzqpzjjaf

Update Advertisement Tag

requires authentication

This endpoint lets admin update advertisement tag

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1/change-tag" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tag\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1/change-tag"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tag": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Advertisement Tag Changed Successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/advertisements/{advertisement_id}/change-tag

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Body Parameters

tag   integer   

Example: 1

Must be one of:
  • 1
  • 2

Show all advertisement

requires authentication

This endpoint lets admin show all advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/advertisements?page=5&per_page=13&filter%5Bid%5D=voluptatem&filter%5Bname%5D=est&filter%5Buser_id%5D=hic&filter%5Bproperty_id%5D=eum&filter%5Blisting_type%5D=nobis&filter%5Bsale_type%5D=expedita&filter%5Bstatus%5D=voluptas&filter%5Brent_term%5D=reiciendis&filter%5Bsearch%5D=nemo&sort=sapiente" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements"
);

const params = {
    "page": "5",
    "per_page": "13",
    "filter[id]": "voluptatem",
    "filter[name]": "est",
    "filter[user_id]": "hic",
    "filter[property_id]": "eum",
    "filter[listing_type]": "nobis",
    "filter[sale_type]": "expedita",
    "filter[status]": "voluptas",
    "filter[rent_term]": "reiciendis",
    "filter[search]": "nemo",
    "sort": "sapiente",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "name": "Sapiente animi accusantium cupiditate consequatur.",
            "name_ar": null,
            "description": "Enim ut dolorum omnis repudiandae magni hic ex. Tempore in assumenda sunt eos minima eum. Non ea voluptas ad ut in nisi occaecati. Qui fugit ut qui a pariatur. Magni non dolores quo culpa non praesentium quam.",
            "description_ar": null,
            "user": {
                "id": 41,
                "name": "Justus Block Odell Willms IV"
            },
            "property": {
                "id": 13,
                "title": null,
                "title_ar": null,
                "price": "420832.00",
                "currency": "SYP",
                "negotiable": 0,
                "property_type": {
                    "key": 6,
                    "value": "FARM"
                },
                "ownership_type": {
                    "key": 3,
                    "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                },
                "furnishing": {
                    "key": 1,
                    "value": "UNFURNISHED"
                },
                "cladding_status": {
                    "key": 7,
                    "value": "STRUCTURE_ONLY"
                },
                "bedrooms": 4,
                "bathrooms": 3,
                "area_sqm": 823,
                "floor_number": 2,
                "address": "5627 Cecil Mill Suite 818\nBradtkeburgh, AL 21557",
                "address_ar": "52424 Gislason Burg Suite 427\nPort Andyside, KY 34639-1579",
                "direction": {
                    "key": 5,
                    "value": "NORTH_EAST"
                },
                "view": "602 Luettgen Extensions Apt. 216\nSchulistmouth, TX 29417",
                "geolocation": {
                    "latitude": -24.710742,
                    "longitude": 22.480546
                },
                "building_name_number": "150823",
                "street_name_number": "523769",
                "location": {
                    "id": 13,
                    "name": "Samantha Feil"
                },
                "user": {
                    "id": 43,
                    "name": "Mable Haley Donavon Green"
                },
                "status": {
                    "key": 3,
                    "value": "EXPIRED"
                },
                "services": []
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/ecocMHGXZGDOMst2vmuprTLNB003OXXBZmWPscbX.jpg"
                }
            ],
            "image": "https://dev.almoualemaqare.com/storage/advertisements/ecocMHGXZGDOMst2vmuprTLNB003OXXBZmWPscbX.jpg",
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "reason": null,
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 46,
            "advertisement_number": "123456789"
        },
        {
            "id": 12,
            "name": "Quibusdam commodi sunt sapiente corporis laborum incidunt.",
            "name_ar": null,
            "description": "Soluta laboriosam non beatae temporibus pariatur est voluptatem. Cupiditate ducimus nam fugit laborum. Porro laudantium vel sed magnam. Voluptatem cupiditate aliquid reprehenderit ab sed et.",
            "description_ar": null,
            "user": {
                "id": 38,
                "name": "Eleanora Halvorson Verna Daugherty"
            },
            "property": {
                "id": 12,
                "title": null,
                "title_ar": null,
                "price": "443196.00",
                "currency": "SYP",
                "negotiable": 0,
                "property_type": {
                    "key": 6,
                    "value": "FARM"
                },
                "ownership_type": {
                    "key": 3,
                    "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                },
                "furnishing": {
                    "key": 1,
                    "value": "UNFURNISHED"
                },
                "cladding_status": {
                    "key": 7,
                    "value": "STRUCTURE_ONLY"
                },
                "bedrooms": 1,
                "bathrooms": 1,
                "area_sqm": 4828,
                "floor_number": 3,
                "address": "89461 Nigel Overpass\nBrakusshire, IA 88018-4732",
                "address_ar": "19570 Marisol Square Suite 225\nWest Don, SC 70506",
                "direction": {
                    "key": 7,
                    "value": "SOUTH_EAST"
                },
                "view": "9968 Blick Ford Suite 029\nEast Anahimouth, NJ 84506-5815",
                "geolocation": {
                    "latitude": -23.354469,
                    "longitude": -107.57598
                },
                "building_name_number": "941732",
                "street_name_number": "549999",
                "location": {
                    "id": 12,
                    "name": "Leatha Zemlak"
                },
                "user": {
                    "id": 40,
                    "name": "Hermina Pfeffer Viviane Hills"
                },
                "status": {
                    "key": 4,
                    "value": "CLOSED_BY_USER"
                },
                "services": []
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/hNTjJJl9svH3xp41DXvrPSFyfBhuOQExU1BBRA4f.jpg"
                }
            ],
            "image": "https://dev.almoualemaqare.com/storage/advertisements/hNTjJJl9svH3xp41DXvrPSFyfBhuOQExU1BBRA4f.jpg",
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "reason": null,
            "rent_term": {
                "key": 1,
                "value": "DAILY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 69,
            "advertisement_number": "123456789"
        },
        {
            "id": 11,
            "name": "Nihil nobis earum velit optio molestias sunt reiciendis.",
            "name_ar": null,
            "description": "Odit ad quo in atque. Libero omnis tempora quasi est commodi maxime facere quis.",
            "description_ar": null,
            "user": {
                "id": 35,
                "name": "Kiara Frami PhD Jovani Feeney III"
            },
            "property": {
                "id": 11,
                "title": null,
                "title_ar": null,
                "price": "442738.00",
                "currency": "SYP",
                "negotiable": 1,
                "property_type": {
                    "key": 2,
                    "value": "SHOP"
                },
                "ownership_type": {
                    "key": 2,
                    "value": "GREEN_TITLE_DEAD"
                },
                "furnishing": {
                    "key": 2,
                    "value": "SIMI_FURNISHED"
                },
                "cladding_status": {
                    "key": 7,
                    "value": "STRUCTURE_ONLY"
                },
                "bedrooms": 5,
                "bathrooms": 3,
                "area_sqm": 3821,
                "floor_number": 3,
                "address": "513 Reichert Ford Suite 681\nBruenborough, VA 39402",
                "address_ar": "8493 Keeling Light Apt. 102\nKingburgh, WI 80472-9174",
                "direction": {
                    "key": 4,
                    "value": "EAST"
                },
                "view": "8040 Camden Dam\nPort Wellingtonland, LA 60858-0330",
                "geolocation": {
                    "latitude": -13.794757,
                    "longitude": -119.866061
                },
                "building_name_number": "6381",
                "street_name_number": "640328",
                "location": {
                    "id": 11,
                    "name": "Dr. Sonny Funk"
                },
                "user": {
                    "id": 37,
                    "name": "Billy Schmitt DDS Morris Gottlieb"
                },
                "status": {
                    "key": 4,
                    "value": "CLOSED_BY_USER"
                },
                "services": []
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/2GoN470tbn6FX1gdPUHsKYanqDDRfIfWK0Aa2TPM.jpg"
                }
            ],
            "image": "https://dev.almoualemaqare.com/storage/advertisements/2GoN470tbn6FX1gdPUHsKYanqDDRfIfWK0Aa2TPM.jpg",
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "reason": null,
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 79,
            "advertisement_number": "123456789"
        },
        {
            "id": 10,
            "name": "Dignissimos est aut necessitatibus.",
            "name_ar": null,
            "description": "Quo aut vel tempora et laboriosam aut. Officia culpa consequatur quibusdam deleniti voluptatibus error fugiat. Doloremque error fuga ipsum consequatur repellendus. Et aut voluptas expedita possimus error delectus minus.",
            "description_ar": null,
            "user": {
                "id": 32,
                "name": "Amara Graham Kade Leuschke III"
            },
            "property": {
                "id": 10,
                "title": null,
                "title_ar": null,
                "price": "418738.00",
                "currency": "SYP",
                "negotiable": 1,
                "property_type": {
                    "key": 2,
                    "value": "SHOP"
                },
                "ownership_type": {
                    "key": 1,
                    "value": "COURT_JUDGMENT"
                },
                "furnishing": {
                    "key": 2,
                    "value": "SIMI_FURNISHED"
                },
                "cladding_status": {
                    "key": 2,
                    "value": "GOOD"
                },
                "bedrooms": 2,
                "bathrooms": 1,
                "area_sqm": 4479,
                "floor_number": 2,
                "address": "2227 Viviane Divide Apt. 164\nZelmaberg, CA 17280",
                "address_ar": "750 Elyse Camp Apt. 074\nFelixside, OR 32278-6683",
                "direction": {
                    "key": 1,
                    "value": "NORTH"
                },
                "view": "807 Antonette Spurs\nTerryton, IN 18021-8920",
                "geolocation": {
                    "latitude": 73.524793,
                    "longitude": -100.403677
                },
                "building_name_number": "148126",
                "street_name_number": "582032",
                "location": {
                    "id": 10,
                    "name": "Estelle Mayert"
                },
                "user": {
                    "id": 34,
                    "name": "Dr. Margarete West Jr. Dr. Delfina Smith"
                },
                "status": {
                    "key": 2,
                    "value": "ACTIVE"
                },
                "services": []
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/U1n2TxrGk9i3zbMGUia3ob7N7flcTMnXTJlRXUmy.jpg"
                }
            ],
            "image": "https://dev.almoualemaqare.com/storage/advertisements/U1n2TxrGk9i3zbMGUia3ob7N7flcTMnXTJlRXUmy.jpg",
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "reason": null,
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 59,
            "advertisement_number": "123456789"
        },
        {
            "id": 9,
            "name": "Inventore iste laborum voluptatibus enim et maiores.",
            "name_ar": null,
            "description": "Cumque hic laboriosam totam. Veniam nisi commodi sapiente pariatur fuga non. Et ut eligendi fuga ratione. Enim sed libero dolore eveniet natus.",
            "description_ar": null,
            "user": {
                "id": 29,
                "name": "Lisette Hintz MD Kaya Wilderman Jr."
            },
            "property": {
                "id": 9,
                "title": null,
                "title_ar": null,
                "price": "486453.00",
                "currency": "SYP",
                "negotiable": 0,
                "property_type": {
                    "key": 9,
                    "value": "HOTEL"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "furnishing": {
                    "key": 1,
                    "value": "UNFURNISHED"
                },
                "cladding_status": {
                    "key": 6,
                    "value": "SUPER_DELUXE"
                },
                "bedrooms": 4,
                "bathrooms": 1,
                "area_sqm": 2644,
                "floor_number": 2,
                "address": "384 Nader Inlet Suite 000\nRollinport, AR 16392",
                "address_ar": "76998 Carolyne Ridges\nFredastad, ND 63617-1164",
                "direction": {
                    "key": 8,
                    "value": "SOUTH_WEST"
                },
                "view": "55243 Treva Drive\nNew Winfieldchester, WI 43855-9355",
                "geolocation": {
                    "latitude": -26.395296,
                    "longitude": -65.058225
                },
                "building_name_number": "501503",
                "street_name_number": "444597",
                "location": {
                    "id": 9,
                    "name": "Joey Lehner"
                },
                "user": {
                    "id": 31,
                    "name": "Elta Dickens II Shaniya Spinka"
                },
                "status": {
                    "key": 4,
                    "value": "CLOSED_BY_USER"
                },
                "services": []
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 1,
                "value": "PRIVATE"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/jpFyykDrWWIsw6DSdowGy87wq68obcitDo2IfqGg.jpg"
                }
            ],
            "image": "https://dev.almoualemaqare.com/storage/advertisements/jpFyykDrWWIsw6DSdowGy87wq68obcitDo2IfqGg.jpg",
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "reason": null,
            "rent_term": {
                "key": 1,
                "value": "DAILY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 86,
            "advertisement_number": "123456789"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/advertisements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 5

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 13

filter[id]   string  optional  

Field to filter items by id. Example: voluptatem

filter[name]   string  optional  

Field to filter items by name. Example: est

filter[user_id]   string  optional  

Field to filter items by user_id. Example: hic

filter[property_id]   string  optional  

Field to filter items by property_id. Example: eum

filter[listing_type]   string  optional  

Field to filter items by listing_type. Example: nobis

filter[sale_type]   string  optional  

Field to filter items by sale_type. Example: expedita

filter[status]   string  optional  

Field to filter items by status. Example: voluptas

filter[rent_term]   string  optional  

Field to filter items by rent_term. Example: reiciendis

filter[search]   string  optional  

Field to perform a custom search. Example: nemo

sort   string  optional  

Field to sort items by id,name,property_id. Example: sapiente

Add Advertisement

requires authentication

This endpoint lets admin add advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=gfdfdqjykfziqiwjp"\
    --form "name_ar=kzbbyfi"\
    --form "description=Vel officiis perferendis tenetur."\
    --form "description_ar=quasi"\
    --form "listing_type=2"\
    --form "sale_type=1"\
    --form "privacy=1"\
    --form "rent_term=4"\
    --form "contact_phone=non"\
    --form "property_id=maxime"\
    --form "main_image=@/tmp/phpdKmJBC" \
    --form "images[]=@/tmp/phpdBePFD" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'gfdfdqjykfziqiwjp');
body.append('name_ar', 'kzbbyfi');
body.append('description', 'Vel officiis perferendis tenetur.');
body.append('description_ar', 'quasi');
body.append('listing_type', '2');
body.append('sale_type', '1');
body.append('privacy', '1');
body.append('rent_term', '4');
body.append('contact_phone', 'non');
body.append('property_id', 'maxime');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 7,
        "name": "Advertisement Sale for home",
        "name_ar": "اعلان لبيع منزل",
        "description": "Advertisement Description",
        "description_ar": "وصف للاعلان",
        "user": {
            "id": 29,
            "name": "Ferne Mueller DDS Mustafa Howell"
        },
        "property": {
            "id": 8,
            "title": null,
            "title_ar": null,
            "price": "804452.00",
            "currency": "SYP",
            "negotiable": 0,
            "property_type": {
                "key": 10,
                "value": "OTHER"
            },
            "ownership_type": {
                "key": 5,
                "value": "SHARES_TITLE_DEAD"
            },
            "furnishing": {
                "key": 2,
                "value": "SIMI_FURNISHED"
            },
            "cladding_status": {
                "key": 4,
                "value": "BLOCK"
            },
            "bedrooms": 3,
            "bathrooms": 2,
            "area_sqm": 3042,
            "floor_number": 1,
            "address": "63673 Olson Fords Suite 611\nSouth Richardberg, WA 12651",
            "address_ar": "572 Cassin Knoll\nBernardchester, DC 36066",
            "direction": {
                "key": 7,
                "value": "SOUTH_EAST"
            },
            "view": "6578 Goodwin Ridge\nJovannyhaven, MS 77121",
            "geolocation": {
                "latitude": -42.605815,
                "longitude": 62.378468
            },
            "building_name_number": "15503",
            "street_name_number": "432192",
            "location": {
                "id": 8,
                "name": "Prof. Anderson Gerhold IV"
            },
            "user": {
                "id": 30,
                "name": "Vanessa Rice Rashawn Dickens MD"
            },
            "status": {
                "key": 3,
                "value": "EXPIRED"
            },
            "services": []
        },
        "listing_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "sale_type": {
            "key": 1,
            "value": "CASH"
        },
        "privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "images": [
            {
                "image_url": "https://dev.almoualemaqare.com/storage/images/66dd44f976adb.jpg"
            }
        ],
        "image": "https://dev.almoualemaqare.com/storage/advertisements/66dd44f960a49.jpg",
        "status": {
            "key": 1,
            "value": "PENDING"
        },
        "reason": null,
        "rent_term": {
            "key": 1,
            "value": "DAILY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 0,
        "advertisement_number": "g1d4TvKmBBJdn6m"
    },
    "message": "The Advertisement added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/advertisements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: gfdfdqjykfziqiwjp

name_ar   string   

Must not be greater than 255 characters. Example: kzbbyfi

description   string  optional  

Example: Vel officiis perferendis tenetur.

description_ar   string  optional  

Example: quasi

listing_type   integer   

Example: 2

Must be one of:
  • 1
  • 2
sale_type   integer   

Example: 1

Must be one of:
  • 1
  • 2
privacy   integer   

Example: 1

Must be one of:
  • 1
  • 2
main_image   file   

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpdKmJBC

images   file[]  optional  

Must be an image. Must not be greater than 2048 kilobytes.

rent_term   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
contact_phone   string   

Example: non

property_id   string   

Example: maxime

Show specific advertisement

requires authentication

This endpoint lets admin show specific advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 5,
        "name": "Minus dolores odio provident voluptatibus facere ipsam.",
        "name_ar": null,
        "description": "Totam eaque molestiae quae. Eos cum earum esse architecto ut amet. Omnis voluptate praesentium eos amet. Eos porro aut vel non voluptates.",
        "description_ar": null,
        "user": {
            "id": 21,
            "name": "Prof. Gabrielle Jerde IV Steve Stamm"
        },
        "property": {
            "id": 5,
            "title": null,
            "title_ar": null,
            "price": "440894.00",
            "currency": "SYP",
            "negotiable": 0,
            "property_type": {
                "key": 1,
                "value": "APARTMENT"
            },
            "ownership_type": {
                "key": 5,
                "value": "SHARES_TITLE_DEAD"
            },
            "furnishing": {
                "key": 2,
                "value": "SIMI_FURNISHED"
            },
            "cladding_status": {
                "key": 2,
                "value": "GOOD"
            },
            "bedrooms": 5,
            "bathrooms": 2,
            "area_sqm": 1889,
            "floor_number": 2,
            "address": "8899 Kiehn Island Apt. 064\nWest Vesta, LA 89565-9128",
            "address_ar": "409 Alessandra Vista\nPort Luciennetown, NE 80773",
            "direction": {
                "key": 8,
                "value": "SOUTH_WEST"
            },
            "view": "6490 Gusikowski Motorway\nDuncanview, ND 74009-8954",
            "geolocation": {
                "latitude": 67.669451,
                "longitude": 103.594971
            },
            "building_name_number": "695185",
            "street_name_number": "921300",
            "location": {
                "id": 5,
                "name": "Owen Pfannerstill PhD"
            },
            "user": {
                "id": 23,
                "name": "Oceane Windler Eddie Hudson"
            },
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "services": []
        },
        "listing_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "sale_type": {
            "key": 2,
            "value": "INSTALLMENT"
        },
        "privacy": {
            "key": 1,
            "value": "PRIVATE"
        },
        "images": [
            {
                "image_url": "https://dev.almoualemaqare.com/storage/advertisements/qw1pTUyczJijexCkQRst0Uy3mk9CI0wD8IEcZBvm.jpg"
            }
        ],
        "image": "https://dev.almoualemaqare.com/storage/advertisements/qw1pTUyczJijexCkQRst0Uy3mk9CI0wD8IEcZBvm.jpg",
        "status": {
            "key": 1,
            "value": "PENDING"
        },
        "reason": null,
        "rent_term": {
            "key": 2,
            "value": "WEEKLY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 31,
        "advertisement_number": "123456789"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/advertisements/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the advertisement. Example: 1

Update specific advertisement

requires authentication

This endpoint lets admin update specific advertisement

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=toahmyssbpxzhwdkmx"\
    --form "name_ar=sc"\
    --form "description=Eligendi numquam architecto totam in delectus omnis esse."\
    --form "description_ar=sed"\
    --form "listing_type=2"\
    --form "sale_type=2"\
    --form "privacy=2"\
    --form "status=2"\
    --form "rent_term=4"\
    --form "clicks=86"\
    --form "main_image=@/tmp/phpJABelI" \
    --form "images[]=@/tmp/phphKFbgF" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'toahmyssbpxzhwdkmx');
body.append('name_ar', 'sc');
body.append('description', 'Eligendi numquam architecto totam in delectus omnis esse.');
body.append('description_ar', 'sed');
body.append('listing_type', '2');
body.append('sale_type', '2');
body.append('privacy', '2');
body.append('status', '2');
body.append('rent_term', '4');
body.append('clicks', '86');
body.append('main_image', document.querySelector('input[name="main_image"]').files[0]);
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 8,
        "name": "Advertisement Sale for home",
        "name_ar": null,
        "description": "Advertisement Description",
        "description_ar": null,
        "user": {
            "id": 36,
            "name": "Prof. Tevin Murphy Florian Anderson"
        },
        "property": {
            "id": 9,
            "title": null,
            "title_ar": null,
            "price": "764083.00",
            "currency": "SYP",
            "negotiable": 0,
            "property_type": {
                "key": 2,
                "value": "SHOP"
            },
            "ownership_type": {
                "key": 2,
                "value": "GREEN_TITLE_DEAD"
            },
            "furnishing": {
                "key": 3,
                "value": "FURNISHED"
            },
            "cladding_status": {
                "key": 1,
                "value": "NEW"
            },
            "bedrooms": 2,
            "bathrooms": 1,
            "area_sqm": 1510,
            "floor_number": 3,
            "address": "3201 Horace Oval Apt. 722\nPort Lillianfort, MO 11494",
            "address_ar": "11598 Elyse Rapids Suite 136\nSouth Icieborough, MS 36260-2271",
            "direction": {
                "key": 8,
                "value": "SOUTH_WEST"
            },
            "view": "3129 Kassulke Glen\nEldredberg, VT 42332-2951",
            "geolocation": {
                "latitude": -54.11044,
                "longitude": -137.762723
            },
            "building_name_number": "644517",
            "street_name_number": "614075",
            "location": {
                "id": 10,
                "name": "Vita Pollich"
            },
            "user": {
                "id": 35,
                "name": "Mia Adams Annabel Bauch"
            },
            "status": {
                "key": 4,
                "value": "CLOSED_BY_USER"
            },
            "services": []
        },
        "listing_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "sale_type": {
            "key": 1,
            "value": "CASH"
        },
        "privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "images": [
            {
                "image_url": null
            }
        ],
        "image": null,
        "status": {
            "key": 2,
            "value": "APPROVED"
        },
        "reason": null,
        "rent_term": {
            "key": 1,
            "value": "DAILY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 0,
        "advertisement_number": "123456789"
    },
    "message": "The Advertisement updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/advertisements/{id}

PATCH api/v1/admin/advertisements/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the advertisement. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: toahmyssbpxzhwdkmx

name_ar   string  optional  

Must not be greater than 255 characters. Example: sc

description   string  optional  

Example: Eligendi numquam architecto totam in delectus omnis esse.

description_ar   string  optional  

Example: sed

user_id   string  optional  
property_id   string  optional  
listing_type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
sale_type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
privacy   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
main_image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpJABelI

images   file[]  optional  

Must be an image. Must not be greater than 2048 kilobytes.

rent_term   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
clicks   integer  optional  

Must be at least 0. Example: 86

Delete specific Advertisement

requires authentication

This endpoint lets admin delete specific advertisement

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Advertisement deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/advertisements/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the advertisement. Example: 1

order

APIs for Order Management

Change Order Status

requires authentication

This endpoint lets the admin change the status of a specific order

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1/change-status?status=consequatur" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": 4,
    \"reason\": \"non\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1/change-status"
);

const params = {
    "status": "consequatur",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": 4,
    "reason": "non"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Order Status Changed Successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/orders/{order_id}/change-status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

order   string   

The ID of the order. Example: et

Query Parameters

status   string   

The new status value (e.g., 'reject' or 'accept'). Example: consequatur

Body Parameters

status   integer   

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
reason   string  optional  

Example: non

Change Order Privacy

requires authentication

This endpoint lets the user change the privacy of a specific order

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1/change-privacy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"privacy\": 2,
    \"privacy_reason\": \"perferendis\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1/change-privacy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "privacy": 2,
    "privacy_reason": "perferendis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Order privacy changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/orders/{order_id}/change-privacy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

advertisement   string   

The ID of the order. Example: rerum

Body Parameters

privacy   integer   

Example: 2

Must be one of:
  • 1
  • 2
privacy_reason   string  optional  

Example: perferendis

Show all orders

requires authentication

This endpoint lets you show all orders

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/orders?page=8&per_page=3&filter%5Bid%5D=officia&filter%5Bproperty_type%5D=nihil&filter%5Bbedrooms%5D=sed&filter%5Bbathrooms%5D=amet&filter%5Barea_sqm%5D=quia&filter%5Bsearch%5D=ipsa&sort=debitis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders"
);

const params = {
    "page": "8",
    "per_page": "3",
    "filter[id]": "officia",
    "filter[property_type]": "nihil",
    "filter[bedrooms]": "sed",
    "filter[bathrooms]": "amet",
    "filter[area_sqm]": "quia",
    "filter[search]": "ipsa",
    "sort": "debitis",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 14,
            "property_type": {
                "key": 8,
                "value": "LAND"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "2192",
            "min_price": 427,
            "max_price": 923,
            "area_sqm": 2757,
            "location": {
                "id": 26,
                "value": "Mozelle Jaskolski"
            },
            "status": {
                "key": 5,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 198,
                "name": "Mrs. Josefina Howe PhD Prof. Max Kshlerin Sr."
            },
            "notes": "Perspiciatis et sunt quod. Velit quam cumque rem iure. Totam ut velit quae quis aut. Ut error necessitatibus explicabo doloremque.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 13,
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "4326695",
            "min_price": 184,
            "max_price": 619,
            "area_sqm": 4884,
            "location": {
                "id": 25,
                "value": "Gladyce O'Hara"
            },
            "status": {
                "key": 5,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 197,
                "name": "Frankie Howe Miss Lessie Lindgren I"
            },
            "notes": "Dolor repudiandae sit qui sequi pariatur. Ut sequi voluptate nostrum numquam nobis provident ducimus. Dicta et voluptatem eum aliquam. Expedita ea et amet quidem distinctio molestiae perferendis.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 12,
            "property_type": {
                "key": 2,
                "value": "SHOP"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "329112407",
            "min_price": 124,
            "max_price": 834,
            "area_sqm": 3694,
            "location": {
                "id": 24,
                "value": "Miss Graciela Blick"
            },
            "status": {
                "key": 3,
                "value": "REJECTED"
            },
            "user": {
                "id": 196,
                "name": "Mr. Harold Kutch Sven Torp"
            },
            "notes": "Excepturi quis et suscipit et quos quae. Et mollitia et minima vero. Harum voluptatem consequatur ratione ut eum magni eaque beatae. Ea sapiente aut in voluptas excepturi officia.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 11,
            "property_type": {
                "key": 6,
                "value": "FARM"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "6",
            "min_price": 196,
            "max_price": 945,
            "area_sqm": 1783,
            "location": {
                "id": 23,
                "value": "Ophelia Mayert Sr."
            },
            "status": {
                "key": 5,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 195,
                "name": "Dr. Brice Kuphal III Serena Weissnat"
            },
            "notes": "Dolorem voluptatem veniam quasi qui enim quibusdam eos. Molestiae amet totam fugiat quidem. Eius est doloribus hic sit dolorem.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 10,
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "47156161",
            "min_price": 385,
            "max_price": 980,
            "area_sqm": 4737,
            "location": {
                "id": 22,
                "value": "Noe Brakus"
            },
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "user": {
                "id": 194,
                "name": "Emerson Schuster Mr. Josue Jakubowski"
            },
            "notes": "Eum assumenda nobis et. Inventore repellendus iure quas vero. Odit est sit temporibus rerum quas delectus. Natus eos et incidunt doloremque.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 8

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 3

filter[id]   string  optional  

Field to filter items by id. Example: officia

filter[property_type]   string  optional  

Field to filter items by property_type. Example: nihil

filter[bedrooms]   string  optional  

Field to filter items by bedrooms. Example: sed

filter[bathrooms]   string  optional  

Field to filter items by bathrooms. Example: amet

filter[area_sqm]   string  optional  

Field to filter items by area_sqm. Example: quia

filter[search]   string  optional  

Field to perform a custom search. Example: ipsa

sort   string  optional  

Field to sort items by id,property_type,bedrooms,bathrooms,area_sqm. Example: debitis

Add Order

requires authentication

This endpoint lets you add order

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user_id\": \"voluptas\",
    \"property_type\": 10,
    \"area_sqm\": 56,
    \"min_price\": 28,
    \"max_price\": 24,
    \"location_id\": \"possimus\",
    \"order_type\": 2,
    \"status\": 1,
    \"notes\": \"amet\",
    \"contact_phone\": \"minima\",
    \"privacy\": 2
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user_id": "voluptas",
    "property_type": 10,
    "area_sqm": 56,
    "min_price": 28,
    "max_price": 24,
    "location_id": "possimus",
    "order_type": 2,
    "status": 1,
    "notes": "amet",
    "contact_phone": "minima",
    "privacy": 2
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 7,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "order_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "order_number": "op1cBXDsI5mWm2Y",
        "min_price": 100,
        "max_price": 200,
        "area_sqm": 2000,
        "location": {
            "id": 11111161,
            "value": "Dr. Webster White"
        },
        "status": {
            "key": 1,
            "value": "PENDING"
        },
        "user": {
            "id": 10363,
            "name": "Litzy Crona Esta Dickens Sr."
        },
        "notes": "simple note",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478689",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "The Order added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   string   

Example: voluptas

property_type   integer   

Example: 10

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
area_sqm   number   

Must be at least 0. Example: 56

min_price   number   

Must be at least 0. Example: 28

max_price   number   

Must be at least 0. Example: 24

location_id   string   

Example: possimus

order_type   integer   

Example: 2

Must be one of:
  • 1
  • 2
status   integer   

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
notes   string  optional  

Example: amet

contact_phone   string   

Example: minima

privacy   integer   

Example: 2

Must be one of:
  • 1
  • 2

Show specific order

requires authentication

This endpoint lets you show specific order

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "property_type": {
            "key": 10,
            "value": "OTHER"
        },
        "order_type": {
            "key": 2,
            "value": "FOR_RENT"
        },
        "order_number": "2",
        "min_price": 500,
        "max_price": 959,
        "area_sqm": 819,
        "location": {
            "id": 22,
            "value": "Mathias Kilback"
        },
        "status": {
            "key": 3,
            "value": "REJECTED"
        },
        "user": {
            "id": 331,
            "name": "Dr. Margaretta Davis Judy Runolfsdottir Jr."
        },
        "notes": "Et ipsum autem dicta voluptas natus ut et. Iure aliquid vel dolorum dolores. Rerum fugiat architecto expedita dolore consequatur. Officiis enim tempora id laborum architecto enim.",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478665",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

Update specific Order

requires authentication

This endpoint lets you update specific Order

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"property_type\": 2,
    \"area_sqm\": 48,
    \"min_price\": 30,
    \"max_price\": 36,
    \"order_type\": 1,
    \"notes\": \"esse\",
    \"contact_phone\": \"omnis\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "property_type": 2,
    "area_sqm": 48,
    "min_price": 30,
    "max_price": 36,
    "order_type": 1,
    "notes": "esse",
    "contact_phone": "omnis"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 9,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "order_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "order_number": "4735059",
        "min_price": 200,
        "max_price": 500,
        "area_sqm": 2000,
        "location": {
            "id": 27,
            "value": "Lelah Runolfsdottir"
        },
        "status": {
            "key": 2,
            "value": "APPROVED"
        },
        "user": {
            "id": 337,
            "name": "Ms. Marie Rodriguez Bette Kub"
        },
        "notes": "Itaque sequi est repellat omnis commodi. Quam et qui ab provident beatae ad. Est earum natus distinctio dolorum sed consequatur.",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478689",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "The Order updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/orders/{id}

PATCH api/v1/admin/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

Body Parameters

user_id   string  optional  
property_type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
area_sqm   number  optional  

Must be at least 0. Example: 48

min_price   number  optional  

Must be at least 0. Example: 30

max_price   number  optional  

Must be at least 0. Example: 36

location_id   string  optional  
order_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
notes   string  optional  

Example: esse

contact_phone   string  optional  

Example: omnis

Delete specific order

requires authentication

This endpoint lets you delete specific order

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Order deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

review

APIs for Review Management

Change Review Status

requires authentication

This endpoint lets the admin change the status of a specific review

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1/change-status?status=beatae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": 2,
    \"reason\": \"facere\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1/change-status"
);

const params = {
    "status": "beatae",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": 2,
    "reason": "facere"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Review Status Changed Successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/reviews/{review_id}/change-status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

review_id   integer   

The ID of the review. Example: 1

review   string   

The ID of the review. Example: voluptas

Query Parameters

status   string   

The new status value (e.g., 'reject' or 'approve'). Example: beatae

Body Parameters

status   integer   

Example: 2

Must be one of:
  • 1
  • 2
  • 3
reason   string  optional  

Example: facere

Show all reviews

requires authentication

This endpoint lets you show all reviews

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/reviews?page=18&per_page=17&filter%5Bid%5D=rem&filter%5Brating%5D=beatae&filter%5Bstatus%5D=sapiente&filter%5Buser_id%5D=tenetur&sort=at" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/reviews"
);

const params = {
    "page": "18",
    "per_page": "17",
    "filter[id]": "rem",
    "filter[rating]": "beatae",
    "filter[status]": "sapiente",
    "filter[user_id]": "tenetur",
    "sort": "at",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 16,
            "rating": 2,
            "comment": "Ut maiores molestias unde quia at aut aliquid.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 10418,
                "name": "Murray Tromp Deja Schmeler"
            },
            "model": {
                "id": 197,
                "name": "Alec Volkman",
                "type": {
                    "key": 3,
                    "value": "DEALER"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY"
        },
        {
            "id": 15,
            "rating": 2,
            "comment": "Ea tenetur dicta nostrum aut quae dolor.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 10416,
                "name": "Monte Kozey Dr. Amya Ruecker"
            },
            "model": {
                "id": 196,
                "name": "Elise Kovacek",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY"
        },
        {
            "id": 14,
            "rating": 5,
            "comment": "Incidunt repellat voluptatibus eos perspiciatis.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 10414,
                "name": "Candido Willms Mr. Marshall Smith IV"
            },
            "model": {
                "id": 195,
                "name": "Ethyl Monahan",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY"
        },
        {
            "id": 13,
            "rating": 5,
            "comment": "Corporis ducimus dolorum enim.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 10412,
                "name": "Lisette Lowe Roscoe Lind"
            },
            "model": {
                "id": 194,
                "name": "Mr. Sven Keebler",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY"
        },
        {
            "id": 12,
            "rating": 3,
            "comment": "Itaque maxime possimus cumque dolores porro voluptatem suscipit aut.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 10410,
                "name": "Kyle Prohaska Natasha Erdman V"
            },
            "model": {
                "id": 193,
                "name": "Kayli Lakin",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/reviews

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 18

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 17

filter[id]   string  optional  

Field to filter items by id. Example: rem

filter[rating]   string  optional  

Field to filter items by rating. Example: beatae

filter[status]   string  optional  

Field to filter items by status. Example: sapiente

filter[user_id]   string  optional  

Field to filter items by user id. Example: tenetur

sort   string  optional  

Field to sort items by id,rating,status. Example: at

Show specific Review

requires authentication

This endpoint lets you show specific review

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/reviews/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 5,
        "rating": 2,
        "comment": "Doloremque et reiciendis commodi veniam nobis.",
        "status": {
            "key": 3,
            "value": "REJECTED"
        },
        "user": {
            "id": 273,
            "name": "Kyle Schuppe Percy Beer PhD"
        },
        "model": {
            "id": 37,
            "name": "Marlen Ebert",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "type": "AGENCY"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the review. Example: 1

Update specific Review

requires authentication

This endpoint lets you update specific review

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 81,
    \"comment\": \"hokhqpislggphrarn\",
    \"status\": 2
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rating": 81,
    "comment": "hokhqpislggphrarn",
    "status": 2
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 3,
        "rating": 4,
        "comment": "Comment Review Test",
        "status": {
            "key": 2,
            "value": "ACTIVE"
        },
        "user": {
            "id": 426,
            "name": "Marcel Stamm Dr. Jamar Haag II"
        },
        "model": {
            "id": 11111244,
            "name": "Louie Kuvalis",
            "type": {
                "key": 1,
                "value": "COMPANY"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "type": "AGENCY"
    },
    "message": "The Review updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/reviews/{id}

PATCH api/v1/admin/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the review. Example: 1

Body Parameters

rating   number  optional  

Must be at least 0. Example: 81

comment   string  optional  

Must not be greater than 255 characters. Example: hokhqpislggphrarn

status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3

Delete specific review

requires authentication

This endpoint lets you delete specific review

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/reviews/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Review deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/reviews/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the review. Example: 1

Application Update

APIs for Application Update Management

Show all Application Updates

requires authentication

This endpoint lets admin show all Application Update

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/application_updates?page=2&per_page=13&filter%5Bid%5D=rem&filter%5Bos_type%5D=tempora&filter%5Btype%5D=sed&sort=vel" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/application_updates"
);

const params = {
    "page": "2",
    "per_page": "13",
    "filter[id]": "rem",
    "filter[os_type]": "tempora",
    "filter[type]": "sed",
    "sort": "vel",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "message": "Quia dolorem consequatur aut non amet explicabo.",
            "os_type": {
                "key": 2,
                "value": "IOS"
            },
            "backend_version": "14.16.89",
            "build_number": "7410413",
            "version": "80.18.79",
            "type": {
                "key": 2,
                "value": "FORCE"
            }
        },
        {
            "id": 12,
            "message": "Omnis et odio hic quam.",
            "os_type": {
                "key": 2,
                "value": "IOS"
            },
            "backend_version": "61.78.47",
            "build_number": "2",
            "version": "84.81.19",
            "type": {
                "key": 1,
                "value": "NORMAL"
            }
        },
        {
            "id": 11,
            "message": "Eum totam asperiores itaque.",
            "os_type": {
                "key": 1,
                "value": "ANDROID"
            },
            "backend_version": "31.98.01",
            "build_number": "13321",
            "version": "33.43.37",
            "type": {
                "key": 1,
                "value": "NORMAL"
            }
        },
        {
            "id": 10,
            "message": "Inventore dolores et voluptas dignissimos quod veniam.",
            "os_type": {
                "key": 1,
                "value": "ANDROID"
            },
            "backend_version": "85.52.35",
            "build_number": "73",
            "version": "76.67.16",
            "type": {
                "key": 2,
                "value": "FORCE"
            }
        },
        {
            "id": 9,
            "message": "Accusamus nesciunt omnis eaque dolores.",
            "os_type": {
                "key": 1,
                "value": "ANDROID"
            },
            "backend_version": "18.41.09",
            "build_number": "77",
            "version": "69.61.48",
            "type": {
                "key": 2,
                "value": "FORCE"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/application_updates

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 2

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 13

filter[id]   string  optional  

Field to filter items by id. Example: rem

filter[os_type]   string  optional  

Field to filter items by os_type. Example: tempora

filter[type]   string  optional  

Field to filter items by type. Example: sed

sort   string  optional  

Field to sort items by id,version. Example: vel

Add Application Update

requires authentication

This endpoint lets you add Application Update

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/application_updates" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"message\": \"soluta\",
    \"os_type\": 1,
    \"backend_version\": \"autem\",
    \"build_number\": \"ipsum\",
    \"version\": \"voluptates\",
    \"type\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/application_updates"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "message": "soluta",
    "os_type": 1,
    "backend_version": "autem",
    "build_number": "ipsum",
    "version": "voluptates",
    "type": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11111154,
        "message": "Sample message",
        "os_type": {
            "key": 2,
            "value": "IOS"
        },
        "backend_version": "1,0,0",
        "build_number": "123",
        "version": "2.1.3",
        "type": {
            "key": 1,
            "value": "NORMAL"
        }
    },
    "message": "The Application Update added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/application_updates

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

message   string   

Example: soluta

os_type   integer   

Example: 1

Must be one of:
  • 1
  • 2
backend_version   string   

Example: autem

build_number   string   

Example: ipsum

version   string   

Example: voluptates

type   integer   

Example: 1

Must be one of:
  • 1
  • 2

Delete specific Application Update

requires authentication

This endpoint lets user delete specific Application Update

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/application_updates/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/application_updates/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Application Update deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/application_updates/{application_update}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

application_update   integer   

Example: 1

agency

APIs for Agency Management

Change Agency Status

requires authentication

This endpoint lets the admin change the status of a specific agency

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1/change-status" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": 3,
    \"reason\": \"perspiciatis\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1/change-status"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": 3,
    "reason": "perspiciatis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Agency Status Changed Successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/agencies/{agency_id}/change-status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

order   string   

The ID of the agency. Example: et

Body Parameters

status   integer   

Example: 3

Must be one of:
  • 1
  • 2
  • 3
reason   string  optional  

Example: perspiciatis

Show all agencies

requires authentication

This endpoint lets you show all agencies

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/agencies?page=1&per_page=4&filter%5Bid%5D=odit&filter%5Bname%5D=dolores&filter%5Btype%5D=aut&filter%5Bstatus%5D=quo&filter%5Baddress%5D=sed&sort=optio&filter%5Bsearch%5D=molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies"
);

const params = {
    "page": "1",
    "per_page": "4",
    "filter[id]": "odit",
    "filter[name]": "dolores",
    "filter[type]": "aut",
    "filter[status]": "quo",
    "filter[address]": "sed",
    "sort": "optio",
    "filter[search]": "molestiae",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 23,
            "name": "Elda Schultz",
            "name_ar": "Richie Hyatt",
            "owner_first_name": "Heaven Walter",
            "owner_last_name": "Janae Dickens III",
            "owner_national_id": "Consequatur et animi exercitationem ratione eligendi.",
            "type": {
                "key": 1,
                "value": "COMPANY"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Maxime esse ut rem non.",
            "address_ar": "Ex autem perferendis dolores aliquid neque placeat et.",
            "geolocation": {
                "latitude": 78.621449,
                "longitude": 80.82805
            },
            "license_number": "60",
            "website": "Quae iste ipsa quidem ut.",
            "phone": "+1-463-484-6336",
            "status": {
                "key": 2,
                "value": "REJECTED"
            },
            "email": "ucartwright@hotmail.com",
            "star_rating": 5
        },
        {
            "id": 22,
            "name": "Dr. Concepcion Pfannerstill V",
            "name_ar": "Nicolette Jaskolski",
            "owner_first_name": "Lia Bogisich",
            "owner_last_name": "Miss Addie Trantow",
            "owner_national_id": "Vel et dicta saepe aspernatur recusandae unde.",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Aut iste vel magni rerum eius autem ipsum eaque.",
            "address_ar": "Est repudiandae sit libero sunt.",
            "geolocation": {
                "latitude": -35.688652,
                "longitude": 138.358951
            },
            "license_number": "23",
            "website": "Natus unde modi rem autem.",
            "phone": "302-817-5568",
            "status": {
                "key": 2,
                "value": "REJECTED"
            },
            "email": "okeefe.kristian@hotmail.com",
            "star_rating": 5
        },
        {
            "id": 21,
            "name": "Elenor Schmeler",
            "name_ar": "Mikel Lebsack",
            "owner_first_name": "Dr. Spencer Howell V",
            "owner_last_name": "Isabell Buckridge V",
            "owner_national_id": "Non mollitia eius qui voluptas quis excepturi.",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Quas dolorem illum pariatur est fugiat.",
            "address_ar": "Aperiam illum tempora delectus tempore.",
            "geolocation": {
                "latitude": 39.859509,
                "longitude": -54.0565
            },
            "license_number": "65",
            "website": "Qui natus non similique modi a.",
            "phone": "1-283-413-4365",
            "status": {
                "key": 2,
                "value": "REJECTED"
            },
            "email": "reynolds.ernestina@stroman.org",
            "star_rating": 4
        },
        {
            "id": 20,
            "name": "Dr. Sincere Franecki",
            "name_ar": "Moshe Watsica",
            "owner_first_name": "Mr. Ramon Ziemann",
            "owner_last_name": "Ashlee Bailey",
            "owner_national_id": "In tempore et expedita magnam a voluptates.",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Ut sint est voluptate corrupti minima natus.",
            "address_ar": "Sapiente qui et sunt iusto suscipit laudantium ducimus.",
            "geolocation": {
                "latitude": 52.447676,
                "longitude": 179.822977
            },
            "license_number": "38",
            "website": "Alias est ea ratione eaque ipsum distinctio ab.",
            "phone": "+1.713.853.5558",
            "status": {
                "key": 3,
                "value": "UNDER_REVIEW"
            },
            "email": "devante81@rowe.com",
            "star_rating": 1
        },
        {
            "id": 19,
            "name": "Emile Emard",
            "name_ar": "Prof. Marina Padberg",
            "owner_first_name": "Burley Franecki IV",
            "owner_last_name": "Domenic Dietrich",
            "owner_national_id": "Sed iusto necessitatibus veritatis ea.",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Iste repudiandae eum ut cupiditate ut voluptas dicta tenetur.",
            "address_ar": "Quam sed voluptatibus non repudiandae facilis.",
            "geolocation": {
                "latitude": -35.962957,
                "longitude": -117.666633
            },
            "license_number": "54",
            "website": "Itaque numquam sit fugiat accusamus nemo temporibus vel.",
            "phone": "1-540-312-9199",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "brett55@thompson.com",
            "star_rating": 1
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/agencies

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 1

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 4

filter[id]   string  optional  

Field to filter items by id. Example: odit

filter[name]   string  optional  

Field to filter items by name. Example: dolores

filter[type]   string  optional  

Field to filter items by type. Example: aut

filter[status]   string  optional  

Field to filter items by status. Example: quo

filter[address]   string  optional  

Field to filter items by address. Example: sed

sort   string  optional  

Field to sort items by id,name,type. Example: optio

filter[search]   string  optional  

Field to perform a custom search. Example: molestiae

Add Agency

requires authentication

This endpoint lets you add Agency

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/agencies" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=mptditeyfoxyhvcj"\
    --form "name_ar=oymdewqqtgcqwtorrr"\
    --form "owner_first_name=xgglwdrdgpkmlel"\
    --form "owner_last_name=ydvg"\
    --form "owner_national_id=wvndoefdn"\
    --form "type=2"\
    --form "address=gfxwpzgtwmx"\
    --form "address_ar=ishptfbignz"\
    --form "geolocation[latitude]=11.740261066"\
    --form "geolocation[longitude]=6.98285"\
    --form "license_number=minima"\
    --form "website=sgpipoxxjce"\
    --form "status=1"\
    --form "email=pbashirian@example.net"\
    --form "star_rating=repudiandae"\
    --form "logo=@/tmp/phpnonpco" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'mptditeyfoxyhvcj');
body.append('name_ar', 'oymdewqqtgcqwtorrr');
body.append('owner_first_name', 'xgglwdrdgpkmlel');
body.append('owner_last_name', 'ydvg');
body.append('owner_national_id', 'wvndoefdn');
body.append('type', '2');
body.append('address', 'gfxwpzgtwmx');
body.append('address_ar', 'ishptfbignz');
body.append('geolocation[latitude]', '11.740261066');
body.append('geolocation[longitude]', '6.98285');
body.append('license_number', 'minima');
body.append('website', 'sgpipoxxjce');
body.append('status', '1');
body.append('email', 'pbashirian@example.net');
body.append('star_rating', 'repudiandae');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 13,
        "name": "Agency Name",
        "name_ar": "اسم المكتب",
        "owner_first_name": "Test",
        "owner_last_name": "Test",
        "owner_national_id": "00325001025",
        "type": {
            "key": 1,
            "value": "COMPANY"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/66dd44fb972be.jpg",
        "address": "123 Main Street",
        "address_ar": "العنوان",
        "geolocation": {
            "latitude": 55,
            "longitude": 55
        },
        "license_number": "123",
        "website": "Agency Website",
        "phone": "+971555422373",
        "status": {
            "key": 3,
            "value": "UNDER_REVIEW"
        },
        "email": "agency@agency.com",
        "star_rating": 1
    },
    "message": "The Agency added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/agencies

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: mptditeyfoxyhvcj

name_ar   string   

Must not be greater than 255 characters. Example: oymdewqqtgcqwtorrr

owner_first_name   string   

Must not be greater than 255 characters. Example: xgglwdrdgpkmlel

owner_last_name   string   

Must not be greater than 255 characters. Example: ydvg

owner_national_id   string   

Must not be greater than 255 characters. Example: wvndoefdn

type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
logo   file   

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpnonpco

address   string   

Must not be greater than 255 characters. Example: gfxwpzgtwmx

address_ar   string   

Must not be greater than 255 characters. Example: ishptfbignz

geolocation   object  optional  
latitude   number  optional  

Example: 11.740261066

longitude   number  optional  

Example: 6.98285

license_number   string  optional  

Example: minima

website   string   

Must not be greater than 255 characters. Example: sgpipoxxjce

phone   string  optional  
status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
email   string   

Must be a valid email address. Must not be greater than 255 characters. Example: pbashirian@example.net

star_rating   string  optional  

Example: repudiandae

Show specific Agency

requires authentication

This endpoint lets you show specific Agency

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/agencies/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 12,
        "name": "Kari Douglas",
        "name_ar": "Cloyd Zulauf",
        "owner_first_name": "Tillman Breitenberg",
        "owner_last_name": "Domingo Bechtelar I",
        "owner_national_id": "Dolorem eos aut harum autem hic.",
        "type": {
            "key": 2,
            "value": "OFFICE"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
        "address": "Et voluptatem ratione consequatur a ut.",
        "address_ar": "Libero beatae quis veniam in suscipit.",
        "geolocation": {
            "latitude": -84.712623,
            "longitude": -95.768488
        },
        "license_number": "46",
        "website": "Fugit repellendus culpa debitis aliquid deleniti laborum.",
        "phone": "(802) 433-1526",
        "status": {
            "key": 3,
            "value": "UNDER_REVIEW"
        },
        "email": "perdman@hotmail.com",
        "star_rating": 1
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/agencies/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the agency. Example: 1

Update specific Agency

requires authentication

This endpoint lets you update specific Agency

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=ivmkrpzzlpyuxvquuhv"\
    --form "name_ar=gpwpph"\
    --form "owner_first_name=txmauanqdomf"\
    --form "owner_last_name=ab"\
    --form "owner_national_id=tleyxxuzxzcurya"\
    --form "type=1"\
    --form "address=qekmkrbozwzvwhtogotl"\
    --form "address_ar=rnuacicybnnudy"\
    --form "geolocation[latitude]=228.081407849"\
    --form "geolocation[longitude]=232896569.5305"\
    --form "license_number=quis"\
    --form "website=pczwdjegmaasblh"\
    --form "status=2"\
    --form "email=svandervort@example.net"\
    --form "star_rating=magni"\
    --form "logo=@/tmp/phpGgAOmH" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'ivmkrpzzlpyuxvquuhv');
body.append('name_ar', 'gpwpph');
body.append('owner_first_name', 'txmauanqdomf');
body.append('owner_last_name', 'ab');
body.append('owner_national_id', 'tleyxxuzxzcurya');
body.append('type', '1');
body.append('address', 'qekmkrbozwzvwhtogotl');
body.append('address_ar', 'rnuacicybnnudy');
body.append('geolocation[latitude]', '228.081407849');
body.append('geolocation[longitude]', '232896569.5305');
body.append('license_number', 'quis');
body.append('website', 'pczwdjegmaasblh');
body.append('status', '2');
body.append('email', 'svandervort@example.net');
body.append('star_rating', 'magni');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 16,
        "name": "Agency Name1",
        "name_ar": "Dr. Danika Hahn III",
        "owner_first_name": "Makayla Stroman I",
        "owner_last_name": "Jewell Dicki",
        "owner_national_id": "Cum porro impedit eos et earum incidunt.",
        "type": {
            "key": 2,
            "value": "OFFICE"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/66dd44fc36cbe.jpg",
        "address": "122 Main Street",
        "address_ar": "Maxime esse repudiandae quia molestiae quos magnam.",
        "geolocation": {
            "latitude": 55,
            "longitude": 55
        },
        "license_number": "123",
        "website": "Agency Website",
        "phone": "+971555422373",
        "status": {
            "key": 1,
            "value": "APPROVED"
        },
        "email": "agency1@agency.com",
        "star_rating": 1
    },
    "message": "The Agency updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/agencies/{id}

PATCH api/v1/admin/agencies/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the agency. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: ivmkrpzzlpyuxvquuhv

name_ar   string  optional  

Must not be greater than 255 characters. Example: gpwpph

owner_first_name   string  optional  

Must not be greater than 255 characters. Example: txmauanqdomf

owner_last_name   string  optional  

Must not be greater than 255 characters. Example: ab

owner_national_id   string  optional  

Must not be greater than 255 characters. Example: tleyxxuzxzcurya

type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
logo   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpGgAOmH

address   string  optional  

Must not be greater than 255 characters. Example: qekmkrbozwzvwhtogotl

address_ar   string  optional  

Must not be greater than 255 characters. Example: rnuacicybnnudy

geolocation   object  optional  
latitude   number  optional  

Example: 228.081407849

longitude   number  optional  

Example: 232896569.5305

license_number   string  optional  

Example: quis

website   string  optional  

Must not be greater than 255 characters. Example: pczwdjegmaasblh

phone   string  optional  
status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
email   string  optional  

Must be a valid email address. Must not be greater than 255 characters. Example: svandervort@example.net

star_rating   string  optional  

Example: magni

Delete specific Agency

requires authentication

This endpoint lets you delete specific agency

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/agencies/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Agency deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/agencies/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the agency. Example: 1

Permissions

APIs for getting permissions

Show All

requires authentication

This endpoint lets you show all permissions

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/permissions" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/permissions"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 62,
            "name": "Holly Walsh",
            "description": "Inventore iusto consequuntur eaque unde. Itaque quae voluptates numquam ad in voluptatem et."
        },
        {
            "id": 61,
            "name": "Miss Estel Schroeder PhD",
            "description": "Vitae cupiditate atque nam a laboriosam voluptas laudantium. Beatae reprehenderit beatae sint dolorem."
        },
        {
            "id": 60,
            "name": "Prof. Austyn Kovacek",
            "description": "Ullam quis quam vitae autem corporis nostrum. Illum omnis rerum voluptatem reiciendis qui voluptas minus. Maiores praesentium aliquam culpa."
        },
        {
            "id": 59,
            "name": "Luna Kris I",
            "description": "Et molestiae eos ipsum repellendus voluptas voluptas. Vel eos facilis explicabo velit quisquam. Non consequatur quibusdam nihil accusamus."
        },
        {
            "id": 58,
            "name": "Corrine Rogahn",
            "description": "In tenetur ipsum nam. Repellendus sunt non ipsum debitis harum voluptatem."
        }
    ],
    "meta": {
        "pagination": {
            "total": 16,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/permissions

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Show specific permission

requires authentication

This endpoint lets you show specific permission

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/permissions/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/permissions/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 57,
        "name": "Jimmy Yundt",
        "description": "Repudiandae et qui quasi ut saepe et libero. Sequi unde vel deleniti doloribus exercitationem iste quia. Et cupiditate quo magnam ut."
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/permissions/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the permission. Example: 1

properties

APIs for Property Management

Show all properties

requires authentication

This endpoint lets you show all properties

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/properties?page=16&per_page=12&filter%5Bid%5D=voluptas&filter%5Btitle%5D=et&filter%5Baddress%5D=consequatur&filter%5Bprice%5D=vel&filter%5Bproperty_type%5D=quia&filter%5Blisting_type%5D=quasi&filter%5Bstatus%5D=quod&filter%5Bsearch%5D=sapiente&sort=ut" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/properties"
);

const params = {
    "page": "16",
    "per_page": "12",
    "filter[id]": "voluptas",
    "filter[title]": "et",
    "filter[address]": "consequatur",
    "filter[price]": "vel",
    "filter[property_type]": "quia",
    "filter[listing_type]": "quasi",
    "filter[status]": "quod",
    "filter[search]": "sapiente",
    "sort": "ut",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 21,
            "title": null,
            "title_ar": null,
            "price": "123993.00",
            "currency": "SYP",
            "negotiable": 1,
            "property_type": {
                "key": 7,
                "value": "CHALET"
            },
            "ownership_type": {
                "key": 7,
                "value": "NOTARY_PUBLIC_AGENCY"
            },
            "furnishing": {
                "key": 2,
                "value": "SIMI_FURNISHED"
            },
            "cladding_status": {
                "key": 6,
                "value": "SUPER_DELUXE"
            },
            "bedrooms": 4,
            "bathrooms": 3,
            "area_sqm": 2687,
            "floor_number": 2,
            "address": "621 Kuhlman Trace Suite 791\nKellystad, DC 08785-3397",
            "address_ar": "1536 Maximus Locks\nMonaland, NH 94446-1320",
            "direction": {
                "key": 7,
                "value": "SOUTH_EAST"
            },
            "view": "198 Arely Gardens\nCedrickhaven, IL 53881-9446",
            "geolocation": {
                "latitude": 21.18207,
                "longitude": -156.801953
            },
            "building_name_number": "193504",
            "street_name_number": "122683",
            "location": {
                "id": 38,
                "name": "Forrest Pollich Sr."
            },
            "user": {
                "id": 356,
                "name": "Aliya Homenick Beau Lueilwitz"
            },
            "status": {
                "key": 1,
                "value": "DRAFT"
            },
            "services": []
        },
        {
            "id": 20,
            "title": null,
            "title_ar": null,
            "price": "111364.00",
            "currency": "SYP",
            "negotiable": 0,
            "property_type": {
                "key": 5,
                "value": "OFFICE"
            },
            "ownership_type": {
                "key": 4,
                "value": "HOUSING_TITLE_DEAD"
            },
            "furnishing": {
                "key": 1,
                "value": "UNFURNISHED"
            },
            "cladding_status": {
                "key": 7,
                "value": "STRUCTURE_ONLY"
            },
            "bedrooms": 2,
            "bathrooms": 2,
            "area_sqm": 4309,
            "floor_number": 3,
            "address": "626 Rath Orchard Suite 333\nRandalborough, KS 46314-2079",
            "address_ar": "5790 Reichert Burg\nKeaganside, CO 06455-6010",
            "direction": {
                "key": 9,
                "value": "NORTH_SOUTH"
            },
            "view": "199 Rowe Cove\nNorth Gerhard, UT 19530",
            "geolocation": {
                "latitude": 61.191738,
                "longitude": -30.158115
            },
            "building_name_number": "897954",
            "street_name_number": "361222",
            "location": {
                "id": 37,
                "name": "Willie Kirlin"
            },
            "user": {
                "id": 355,
                "name": "Jovany Dach Luigi Christiansen"
            },
            "status": {
                "key": 4,
                "value": "CLOSED_BY_USER"
            },
            "services": []
        },
        {
            "id": 19,
            "title": null,
            "title_ar": null,
            "price": "20389.00",
            "currency": "SYP",
            "negotiable": 1,
            "property_type": {
                "key": 10,
                "value": "OTHER"
            },
            "ownership_type": {
                "key": 7,
                "value": "NOTARY_PUBLIC_AGENCY"
            },
            "furnishing": {
                "key": 2,
                "value": "SIMI_FURNISHED"
            },
            "cladding_status": {
                "key": 1,
                "value": "NEW"
            },
            "bedrooms": 4,
            "bathrooms": 1,
            "area_sqm": 895,
            "floor_number": 1,
            "address": "25497 Arvid Walks\nSouth Dagmarborough, AZ 61734-1704",
            "address_ar": "55448 Cassin Junctions\nTorphyburgh, FL 65182-9658",
            "direction": {
                "key": 10,
                "value": "EAST_WEST"
            },
            "view": "53737 Jakayla Squares Suite 723\nHyattfurt, FL 20145",
            "geolocation": {
                "latitude": -44.213937,
                "longitude": -169.705211
            },
            "building_name_number": "308476",
            "street_name_number": "720288",
            "location": {
                "id": 36,
                "name": "Miss Shania Bauch MD"
            },
            "user": {
                "id": 354,
                "name": "Conor Hammes Dr. Ruthe Dicki I"
            },
            "status": {
                "key": 1,
                "value": "DRAFT"
            },
            "services": []
        },
        {
            "id": 18,
            "title": null,
            "title_ar": null,
            "price": "180596.00",
            "currency": "SYP",
            "negotiable": 1,
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "ownership_type": {
                "key": 3,
                "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
            },
            "furnishing": {
                "key": 2,
                "value": "SIMI_FURNISHED"
            },
            "cladding_status": {
                "key": 6,
                "value": "SUPER_DELUXE"
            },
            "bedrooms": 1,
            "bathrooms": 1,
            "area_sqm": 3700,
            "floor_number": 2,
            "address": "87860 Tianna Circle Suite 773\nCarrollhaven, IL 40698-6201",
            "address_ar": "7073 Amira Harbors Suite 394\nJulesburgh, NC 41292-1650",
            "direction": {
                "key": 5,
                "value": "NORTH_EAST"
            },
            "view": "675 Bode Ridge\nNew Magdalena, VA 77728-1904",
            "geolocation": {
                "latitude": -22.562072,
                "longitude": 112.994628
            },
            "building_name_number": "144357",
            "street_name_number": "792161",
            "location": {
                "id": 35,
                "name": "Prof. Everett Homenick Sr."
            },
            "user": {
                "id": 353,
                "name": "Nico Boyle Rhea Oberbrunner"
            },
            "status": {
                "key": 1,
                "value": "DRAFT"
            },
            "services": []
        },
        {
            "id": 17,
            "title": null,
            "title_ar": null,
            "price": "316483.00",
            "currency": "SYP",
            "negotiable": 1,
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "ownership_type": {
                "key": 4,
                "value": "HOUSING_TITLE_DEAD"
            },
            "furnishing": {
                "key": 1,
                "value": "UNFURNISHED"
            },
            "cladding_status": {
                "key": 1,
                "value": "NEW"
            },
            "bedrooms": 1,
            "bathrooms": 2,
            "area_sqm": 3546,
            "floor_number": 1,
            "address": "8471 Kira Point Suite 392\nNew Rahsaanfort, WV 07801",
            "address_ar": "67750 Koch Cliffs Apt. 743\nConsidineland, KS 94571",
            "direction": {
                "key": 8,
                "value": "SOUTH_WEST"
            },
            "view": "6754 Sanford Estates Apt. 814\nOlgafort, OK 50234-6723",
            "geolocation": {
                "latitude": 85.282346,
                "longitude": 179.189116
            },
            "building_name_number": "68455",
            "street_name_number": "573347",
            "location": {
                "id": 34,
                "name": "Monserrat Shields"
            },
            "user": {
                "id": 352,
                "name": "Josefa Gusikowski Gus Weissnat"
            },
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "services": []
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/properties

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 16

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 12

filter[id]   string  optional  

Field to filter items by id. Example: voluptas

filter[title]   string  optional  

Field to filter items by title. Example: et

filter[address]   string  optional  

Field to filter items by address. Example: consequatur

filter[price]   string  optional  

Field to filter items by price. Example: vel

filter[property_type]   string  optional  

Field to filter items by property_type. Example: quia

filter[listing_type]   string  optional  

Field to filter items by listing_type. Example: quasi

filter[status]   string  optional  

Field to filter items by status. Example: quod

filter[search]   string  optional  

Field to perform a custom search. Example: sapiente

sort   string  optional  

Field to sort items by id,title,price. Example: ut

Add Property

requires authentication

This endpoint lets you add Property

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/properties" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"rouqil\",
    \"title_ar\": \"awrqjqjehj\",
    \"price\": 77,
    \"negotiable\": false,
    \"property_type\": 5,
    \"ownership_type\": 1,
    \"furnishing\": 2,
    \"direction\": 6,
    \"cladding_status\": 4,
    \"status\": 4,
    \"bedrooms\": 23,
    \"bathrooms\": 29,
    \"area_sqm\": 30,
    \"floor_number\": 72,
    \"view\": \"bhzgulxheurjbunqhalwfu\",
    \"address\": \"cogvgltpcq\",
    \"address_ar\": \"mkhfdbsvopnfyhwxppsn\",
    \"geolocation\": {
        \"latitude\": 2.03222,
        \"longitude\": 46471.90250293
    },
    \"building_name_number\": \"quae\",
    \"street_name_number\": \"repellat\",
    \"location_id\": \"ea\",
    \"user_id\": \"aliquam\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/properties"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "title": "rouqil",
    "title_ar": "awrqjqjehj",
    "price": 77,
    "negotiable": false,
    "property_type": 5,
    "ownership_type": 1,
    "furnishing": 2,
    "direction": 6,
    "cladding_status": 4,
    "status": 4,
    "bedrooms": 23,
    "bathrooms": 29,
    "area_sqm": 30,
    "floor_number": 72,
    "view": "bhzgulxheurjbunqhalwfu",
    "address": "cogvgltpcq",
    "address_ar": "mkhfdbsvopnfyhwxppsn",
    "geolocation": {
        "latitude": 2.03222,
        "longitude": 46471.90250293
    },
    "building_name_number": "quae",
    "street_name_number": "repellat",
    "location_id": "ea",
    "user_id": "aliquam"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 15,
        "title": "title of property",
        "title_ar": "title of property",
        "price": "100000.00",
        "currency": "SYP",
        "negotiable": 1,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "ownership_type": {
            "key": 2,
            "value": "GREEN_TITLE_DEAD"
        },
        "furnishing": {
            "key": 3,
            "value": "FURNISHED"
        },
        "cladding_status": {
            "key": 2,
            "value": "GOOD"
        },
        "bedrooms": 3,
        "bathrooms": 2,
        "area_sqm": 2000,
        "floor_number": null,
        "address": "123 Main Street",
        "address_ar": "123 Main Street",
        "direction": {
            "key": 1,
            "value": "NORTH"
        },
        "view": "123 Main Street",
        "geolocation": null,
        "building_name_number": "234",
        "street_name_number": "234",
        "location": {
            "id": 71,
            "name": "Danial Shanahan II"
        },
        "user": {
            "id": 252,
            "name": "Einar Marvin Ms. Janet Marks I"
        },
        "status": {
            "key": 2,
            "value": "ACTIVE"
        },
        "services": []
    },
    "message": "The Property added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/properties

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

title   string   

Must not be greater than 255 characters. Example: rouqil

title_ar   string   

Must not be greater than 255 characters. Example: awrqjqjehj

price   number   

Must be at least 0. Example: 77

negotiable   boolean   

Example: false

property_type   integer  optional  

Example: 5

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
ownership_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
furnishing   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
direction   integer  optional  

Example: 6

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
cladding_status   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
status   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
bedrooms   number   

Must be at least 0. Example: 23

bathrooms   number   

Must be at least 0. Example: 29

area_sqm   number   

Must be at least 0. Example: 30

floor_number   number  optional  

Must be at least 0. Example: 72

view   string   

Must not be greater than 255 characters. Example: bhzgulxheurjbunqhalwfu

address   string   

Must not be greater than 255 characters. Example: cogvgltpcq

address_ar   string   

Must not be greater than 255 characters. Example: mkhfdbsvopnfyhwxppsn

geolocation   object  optional  
latitude   number  optional  

Example: 2.03222

longitude   number  optional  

Example: 46471.90250293

building_name_number   string  optional  

Example: quae

street_name_number   string  optional  

Example: repellat

location_id   string   

Example: ea

user_id   string   

Example: aliquam

Show specific Property

requires authentication

This endpoint lets you show specific Property

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/properties/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/properties/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 14,
        "title": null,
        "title_ar": null,
        "price": "870423.00",
        "currency": "SYP",
        "negotiable": 0,
        "property_type": {
            "key": 4,
            "value": "BUILDING"
        },
        "ownership_type": {
            "key": 2,
            "value": "GREEN_TITLE_DEAD"
        },
        "furnishing": {
            "key": 2,
            "value": "SIMI_FURNISHED"
        },
        "cladding_status": {
            "key": 5,
            "value": "DELUXE"
        },
        "bedrooms": 1,
        "bathrooms": 3,
        "area_sqm": 1217,
        "floor_number": 3,
        "address": "620 Derick Trafficway Apt. 276\nSouth Piper, MI 79082",
        "address_ar": "3991 Ritchie Crescent Suite 738\nGreenfelderport, IL 90866-8505",
        "direction": {
            "key": 7,
            "value": "SOUTH_EAST"
        },
        "view": "56769 Shields Meadow Suite 690\nLake Ally, ID 47090-2749",
        "geolocation": {
            "latitude": -30.118186,
            "longitude": -85.842104
        },
        "building_name_number": "202999",
        "street_name_number": "417132",
        "location": {
            "id": 67,
            "name": "Devin Metz"
        },
        "user": {
            "id": 248,
            "name": "Prof. Kaci Gibson II Luisa Morar"
        },
        "status": {
            "key": 1,
            "value": "DRAFT"
        },
        "services": [
            {
                "id": 1,
                "title": "Prof.",
                "title_ar": "Miss",
                "description": "Qui quibusdam ullam ea fugiat debitis voluptatem. Voluptatem inventore enim rem vel laborum sapiente. Magnam sapiente eveniet quo aut nesciunt. Vero harum laudantium tenetur qui voluptate illo itaque.",
                "description_ar": "Minus id animi quas et expedita delectus et voluptas. Aspernatur repellendus enim sit similique modi. Voluptatem dolores quia veniam enim qui quidem doloremque sunt.",
                "icon": "https://via.placeholder.com/640x480.png/0066aa?text=et"
            }
        ]
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/properties/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the property. Example: 1

Update specific Property

requires authentication

This endpoint lets you update specific Property

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/properties/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"uansdfyaeix\",
    \"price\": 75,
    \"negotiable\": true,
    \"property_type\": 7,
    \"ownership_type\": 1,
    \"furnishing\": 3,
    \"direction\": 9,
    \"cladding_status\": 2,
    \"status\": 3,
    \"bedrooms\": 42,
    \"bathrooms\": 13,
    \"area_sqm\": 18,
    \"floor_number\": 78,
    \"view\": \"icwaj\",
    \"address\": \"unima\",
    \"geolocation\": {
        \"latitude\": 144442272.508538,
        \"longitude\": 491.958
    },
    \"building_name_number\": \"ut\",
    \"street_name_number\": \"veniam\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/properties/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "title": "uansdfyaeix",
    "price": 75,
    "negotiable": true,
    "property_type": 7,
    "ownership_type": 1,
    "furnishing": 3,
    "direction": 9,
    "cladding_status": 2,
    "status": 3,
    "bedrooms": 42,
    "bathrooms": 13,
    "area_sqm": 18,
    "floor_number": 78,
    "view": "icwaj",
    "address": "unima",
    "geolocation": {
        "latitude": 144442272.508538,
        "longitude": 491.958
    },
    "building_name_number": "ut",
    "street_name_number": "veniam"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 18,
        "title": null,
        "title_ar": null,
        "price": 100000,
        "currency": "SYP",
        "negotiable": true,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "ownership_type": {
            "key": 7,
            "value": "NOTARY_PUBLIC_AGENCY"
        },
        "furnishing": {
            "key": 3,
            "value": "FURNISHED"
        },
        "cladding_status": {
            "key": 1,
            "value": "NEW"
        },
        "bedrooms": 3,
        "bathrooms": 2,
        "area_sqm": 2000,
        "floor_number": 1,
        "address": "123 Main Street",
        "address_ar": "2407 Reuben Park Apt. 887\nSouth Maximilliaview, NH 91368-1912",
        "direction": {
            "key": 6,
            "value": "NORTH_WEST"
        },
        "view": "48172 Isabel Tunnel Suite 487\nMistyfort, NC 17724-9755",
        "geolocation": {
            "latitude": -77.0365298,
            "longitude": 38.8976763
        },
        "building_name_number": "28718",
        "street_name_number": "764276",
        "location": {
            "id": 76,
            "name": "Sedrick Sanford"
        },
        "user": {
            "id": 257,
            "name": "Pietro Stracke Destinee Blanda"
        },
        "status": {
            "key": 2,
            "value": "ACTIVE"
        },
        "services": []
    },
    "message": "The Property updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/properties/{id}

PATCH api/v1/admin/properties/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the property. Example: 1

Body Parameters

title   string  optional  

Must not be greater than 255 characters. Example: uansdfyaeix

price   number  optional  

Must be at least 0. Example: 75

negotiable   boolean  optional  

Example: true

property_type   integer  optional  

Example: 7

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
ownership_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
furnishing   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
direction   integer  optional  

Example: 9

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
cladding_status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
status   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
bedrooms   number  optional  

Must be at least 0. Example: 42

bathrooms   number  optional  

Must be at least 0. Example: 13

area_sqm   number  optional  

Must be at least 0. Example: 18

floor_number   number  optional  

Must be at least 0. Example: 78

view   string  optional  

Must not be greater than 255 characters. Example: icwaj

address   string  optional  

Must not be greater than 255 characters. Example: unima

geolocation   object  optional  
latitude   number  optional  

Example: 144442272.50854

longitude   number  optional  

Example: 491.958

building_name_number   string  optional  

Example: ut

street_name_number   string  optional  

Example: veniam

location_id   string  optional  
user_id   string  optional  

Delete specific Property

requires authentication

This endpoint lets you Property specific Property

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/properties/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/properties/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Property deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/properties/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the property. Example: 1

city

APIs for City Management

Show all cities

requires authentication

This endpoint lets you show all cities

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/cities?page=15&per_page=16&filter%5Bid%5D=natus&filter%5Bname%5D=autem&filter%5Bsearch%5D=porro&sort=molestiae" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/cities"
);

const params = {
    "page": "15",
    "per_page": "16",
    "filter[id]": "natus",
    "filter[name]": "autem",
    "filter[search]": "porro",
    "sort": "molestiae",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 26,
            "name": "Serena Nikolaus",
            "name_ar": "Glen Marquardt"
        },
        {
            "id": 25,
            "name": "Silas Ebert",
            "name_ar": "Mr. Gene Homenick"
        },
        {
            "id": 24,
            "name": "Mr. Brayan Waters",
            "name_ar": "Ibrahim Tillman"
        },
        {
            "id": 23,
            "name": "Nicklaus Wisoky",
            "name_ar": "Dr. Howell Goodwin"
        },
        {
            "id": 22,
            "name": "Lily Walter",
            "name_ar": "Dr. Quinten Kovacek II"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/cities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 15

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 16

filter[id]   string  optional  

Field to filter items by id. Example: natus

filter[name]   string  optional  

Field to filter items by name. Example: autem

filter[search]   string  optional  

Field to perform a custom search. Example: porro

sort   string  optional  

Field to sort items by id,name. Example: molestiae

Add City

requires authentication

This endpoint lets you add City

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/cities" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"amgkrfcrdygapblejum\",
    \"name_ar\": \"ojfgwmlwuqszpklzarvsbdbw\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/cities"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "amgkrfcrdygapblejum",
    "name_ar": "ojfgwmlwuqszpklzarvsbdbw"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 12,
        "name": "City Name",
        "name_ar": "اسم المديتة"
    },
    "message": "The City added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/cities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: amgkrfcrdygapblejum

name_ar   string   

Must not be greater than 255 characters. Example: ojfgwmlwuqszpklzarvsbdbw

Show specific city

requires authentication

This endpoint lets you show specific City

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/cities/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/cities/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11,
        "name": "Lea Emard",
        "name_ar": "Eli Jacobi"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/cities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the city. Example: 1

Update specific City

requires authentication

This endpoint lets you update specific City

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/cities/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"e\",
    \"name_ar\": \"nvq\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/cities/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "e",
    "name_ar": "nvq"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 15,
        "name": "City Name1",
        "name_ar": "اسم المديتة"
    },
    "message": "The City updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/cities/{id}

PATCH api/v1/admin/cities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the city. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: e

name_ar   string  optional  

Must not be greater than 255 characters. Example: nvq

Delete specific City

requires authentication

This endpoint lets you delete specific city

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/cities/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/cities/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The City deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/cities/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the city. Example: 1

Client

APIs for Client Management

Show all clients

requires authentication

This endpoint lets you show all clients

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/clients?page=3&per_page=12&filter%5Bid%5D=ut&filter%5Bfirst_name%5D=architecto&filter%5Blast_name%5D=enim&filter%5Bjob%5D=non&filter%5Bsearch%5D=in&sort=ullam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/clients"
);

const params = {
    "page": "3",
    "per_page": "12",
    "filter[id]": "ut",
    "filter[first_name]": "architecto",
    "filter[last_name]": "enim",
    "filter[job]": "non",
    "filter[search]": "in",
    "sort": "ullam",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "first_name": "Mrs. Stacey Bernier DVM",
            "last_name": "Catherine Klocko",
            "phone": "352-432-3121",
            "job": "Blanditiis velit ea labore et esse molestias.",
            "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
            "notes": "Voluptas omnis suscipit aut voluptatum et at.",
            "agency": {
                "id": 103,
                "name": "Norris Durgan DVM",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "has_verified_phone": true
        },
        {
            "id": 12,
            "first_name": "Savanah Fahey",
            "last_name": "Hailey Hill",
            "phone": "+1-323-569-4012",
            "job": "Vel sit quod quod ea ipsa sequi dolore.",
            "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
            "notes": "Sequi unde assumenda animi et.",
            "agency": {
                "id": 102,
                "name": "Elwyn Hackett",
                "type": {
                    "key": 3,
                    "value": "DEALER"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "has_verified_phone": true
        },
        {
            "id": 11,
            "first_name": "Miss Janessa Collier",
            "last_name": "Jerome Ziemann",
            "phone": "+1.480.609.8983",
            "job": "Delectus enim error sed corrupti eum.",
            "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
            "notes": "Autem maxime impedit nemo nesciunt vel id et.",
            "agency": {
                "id": 101,
                "name": "Mark Rempel",
                "type": {
                    "key": 3,
                    "value": "DEALER"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "has_verified_phone": true
        },
        {
            "id": 10,
            "first_name": "Monty Koepp",
            "last_name": "Josiah Hoeger",
            "phone": "(678) 432-9361",
            "job": "Nobis molestiae possimus est voluptatibus vitae dolores quia.",
            "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
            "notes": "Qui tempora officia consequatur rerum sed ut.",
            "agency": {
                "id": 100,
                "name": "Virginie Leuschke DVM",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "has_verified_phone": true
        },
        {
            "id": 9,
            "first_name": "Eddie Bednar",
            "last_name": "Jayne Schroeder DVM",
            "phone": "1-364-419-0218",
            "job": "Repellendus similique quisquam delectus commodi laboriosam temporibus.",
            "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
            "notes": "Non quo necessitatibus non esse facere voluptatem sapiente praesentium.",
            "agency": {
                "id": 99,
                "name": "Marlene Emard",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "has_verified_phone": true
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/clients

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 3

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 12

filter[id]   string  optional  

Field to filter items by id. Example: ut

filter[first_name]   string  optional  

Field to filter items by first_name. Example: architecto

filter[last_name]   string  optional  

Field to filter items by last_name. Example: enim

filter[job]   string  optional  

Field to filter items by job. Example: non

filter[search]   string  optional  

Field to perform a custom search. Example: in

sort   string  optional  

Field to sort items by id,first_name,last_name,job. Example: ullam

Add Client

requires authentication

This endpoint lets you add client

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/clients" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=ptdqbjgnjfolsavmaue"\
    --form "last_name=qui"\
    --form "job=crgbz"\
    --form "notes=iudhinzrwko"\
    --form "phone=assumenda"\
    --form "agency_id=necessitatibus"\
    --form "image=@/tmp/phpNbLGPm" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/clients"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'ptdqbjgnjfolsavmaue');
body.append('last_name', 'qui');
body.append('job', 'crgbz');
body.append('notes', 'iudhinzrwko');
body.append('phone', 'assumenda');
body.append('agency_id', 'necessitatibus');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "first_name": "Ahmad",
        "last_name": "Ahmad",
        "phone": "+963994622354",
        "job": "Developer",
        "image": "https://dev.almoualemaqare.com/storage/clients/tmp/phpDnOOdl",
        "notes": "I am client",
        "agency": {
            "id": 19,
            "name": "Nicolas Kemmer",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "has_verified_phone": false
    },
    "message": "The Client added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/clients

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string   

Must not be greater than 255 characters. Example: ptdqbjgnjfolsavmaue

last_name   string   

Must not be greater than 255 characters. Example: qui

job   string  optional  

Must not be greater than 255 characters. Example: crgbz

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpNbLGPm

notes   string  optional  

Must not be greater than 255 characters. Example: iudhinzrwko

phone   string   

Example: assumenda

agency_id   string   

Example: necessitatibus

Show specific client

requires authentication

This endpoint lets you show specific client

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/clients/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/clients/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "first_name": "Stephan Steuber",
        "last_name": "Nickolas Mraz",
        "phone": "+1-580-285-7278",
        "job": "Consequatur vero quis minima quia.",
        "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
        "notes": "In quisquam et quis et blanditiis cumque.",
        "agency": {
            "id": 11111181,
            "name": "Mateo Metz",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "has_verified_phone": true
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 3

Update specific client

requires authentication

This endpoint lets you update specific client

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/clients/18" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=zxjgpw"\
    --form "last_name=ufaadzkbbmcvbskqumfyys"\
    --form "job=indxkocxbwxpvvxlxlgungnrr"\
    --form "notes=fcownzgotvrmqavklsckgw"\
    --form "image=@/tmp/phpmCLKFm" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/clients/18"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'zxjgpw');
body.append('last_name', 'ufaadzkbbmcvbskqumfyys');
body.append('job', 'indxkocxbwxpvvxlxlgungnrr');
body.append('notes', 'fcownzgotvrmqavklsckgw');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 111114,
        "first_name": "Mohammad",
        "last_name": "Ahmad",
        "phone": "831.924.2679",
        "job": "Developer",
        "image": "https://dev.almoualemaqare.com/storage/clients/66dd4501d9af9.jpg",
        "notes": "I am client",
        "agency": {
            "id": 11111186,
            "name": "Dr. Cletus Heathcote",
            "type": {
                "key": 1,
                "value": "COMPANY"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "has_verified_phone": true
    },
    "message": "The Client updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/clients/{id}

PATCH api/v1/admin/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 18

Body Parameters

first_name   string  optional  

Must not be greater than 255 characters. Example: zxjgpw

last_name   string  optional  

Must not be greater than 255 characters. Example: ufaadzkbbmcvbskqumfyys

job   string  optional  

Must not be greater than 255 characters. Example: indxkocxbwxpvvxlxlgungnrr

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpmCLKFm

notes   string  optional  

Must not be greater than 255 characters. Example: fcownzgotvrmqavklsckgw

phone   string  optional  
agency_id   string  optional  

Delete specific Client

requires authentication

This endpoint lets you delete specific client

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/clients/8" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/clients/8"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Client deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 8

Employee

APIs for Employee Management

Show all employees

requires authentication

This endpoint lets you show all employees

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/employees?page=9&per_page=14&filter%5Bid%5D=illum&filter%5Btype%5D=libero&filter%5Bstatus%5D=modi&sort=non" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/employees"
);

const params = {
    "page": "9",
    "per_page": "14",
    "filter[id]": "illum",
    "filter[type]": "libero",
    "filter[status]": "modi",
    "sort": "non",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "national_id": "Voluptas harum sit facere doloremque.",
            "type": {
                "key": 5,
                "value": "BOY"
            },
            "status": {
                "key": 2,
                "value": "DISABLED"
            },
            "agency": {
                "id": 11111200,
                "name": "Gwen Kuhic",
                "type": {
                    "key": 3,
                    "value": "DEALER"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "user": {
                "id": 218,
                "first_name": "Dr. Myah Ebert",
                "last_name": "Providenci Bashirian",
                "phone": "+1.276.968.1260",
                "is_employee": 1
            }
        },
        {
            "id": 12,
            "national_id": "Ea beatae doloribus rerum.",
            "type": {
                "key": 5,
                "value": "BOY"
            },
            "status": {
                "key": 1,
                "value": "ACTIVE"
            },
            "agency": {
                "id": 11111199,
                "name": "Dr. Raymond Mohr",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "user": {
                "id": 216,
                "first_name": "Ansel Maggio",
                "last_name": "Evie Osinski",
                "phone": "+1.978.465.3964",
                "is_employee": 1
            }
        },
        {
            "id": 11,
            "national_id": "Autem quisquam dolor aliquam ratione harum at.",
            "type": {
                "key": 3,
                "value": "NORMAL"
            },
            "status": {
                "key": 1,
                "value": "ACTIVE"
            },
            "agency": {
                "id": 11111198,
                "name": "Dr. Leonor Mitchell",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "user": {
                "id": 214,
                "first_name": "Camille Boyle",
                "last_name": "Skye Zulauf",
                "phone": "+1.872.825.5260",
                "is_employee": 1
            }
        },
        {
            "id": 10,
            "national_id": "Dolore enim quasi dolorem ullam veritatis ratione.",
            "type": {
                "key": 5,
                "value": "BOY"
            },
            "status": {
                "key": 2,
                "value": "DISABLED"
            },
            "agency": {
                "id": 11111197,
                "name": "Hannah Huel DDS",
                "type": {
                    "key": 3,
                    "value": "DEALER"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "user": {
                "id": 212,
                "first_name": "Delmer Cronin",
                "last_name": "Prof. Jade Rolfson DVM",
                "phone": "+1-667-354-3343",
                "is_employee": 1
            }
        },
        {
            "id": 9,
            "national_id": "Ut ipsam consequatur sed doloribus iure quas.",
            "type": {
                "key": 4,
                "value": "DRIVER"
            },
            "status": {
                "key": 2,
                "value": "DISABLED"
            },
            "agency": {
                "id": 11111196,
                "name": "Kay Fritsch",
                "type": {
                    "key": 1,
                    "value": "COMPANY"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "user": {
                "id": 210,
                "first_name": "Wava Lockman",
                "last_name": "Sylvia Morar",
                "phone": "+1-515-579-7831",
                "is_employee": 1
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/employees

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 9

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 14

filter[id]   string  optional  

Field to filter items by id. Example: illum

filter[type]   string  optional  

Field to filter items by type. Example: libero

filter[status]   string  optional  

Field to filter items by status. Example: modi

sort   string  optional  

Field to sort items by id,type,status. Example: non

Add Employee

requires authentication

This endpoint lets you add employee

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/employees" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"national_id\": \"xjwrabvro\",
    \"type\": 2,
    \"status\": 1,
    \"user_id\": \"accusantium\",
    \"agency_id\": \"nam\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/employees"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "national_id": "xjwrabvro",
    "type": 2,
    "status": 1,
    "user_id": "accusantium",
    "agency_id": "nam"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 3,
        "national_id": "12",
        "type": {
            "key": 2,
            "value": "MANAGER"
        },
        "status": {
            "key": 1,
            "value": "ACTIVE"
        },
        "agency": {
            "id": 25,
            "name": "Cristopher Kub",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "user": {
            "id": 155,
            "first_name": "Vena Dare",
            "last_name": "Oren Murazik",
            "phone": "+1-571-794-5613",
            "is_employee": 1
        }
    },
    "message": "The Employee added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/employees

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

national_id   string  optional  

Must not be greater than 255 characters. Example: xjwrabvro

type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
user_id   string   

Example: accusantium

agency_id   string   

Example: nam

Show specific employee

requires authentication

This endpoint lets you show specific employee

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/employees/9" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/employees/9"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "national_id": "Expedita minus rerum nemo delectus nam incidunt nesciunt.",
        "type": {
            "key": 1,
            "value": "OWNER"
        },
        "status": {
            "key": 2,
            "value": "DISABLED"
        },
        "agency": {
            "id": 22,
            "name": "Julianne Fisher",
            "type": {
                "key": 1,
                "value": "COMPANY"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "user": {
            "id": 145,
            "first_name": "Ms. Ramona Conroy",
            "last_name": "Miss Kaylie Jones",
            "phone": "+14439563524",
            "is_employee": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 9

Update specific employee

requires authentication

This endpoint lets you update specific employee

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/employees/15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"national_id\": \"kyjvfhxoljkjudehupuj\",
    \"type\": 5,
    \"status\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/employees/15"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "national_id": "kyjvfhxoljkjudehupuj",
    "type": 5,
    "status": 1
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "national_id": "Id expedita quia id recusandae debitis.",
        "type": {
            "key": 1,
            "value": "OWNER"
        },
        "status": {
            "key": 1,
            "value": "ACTIVE"
        },
        "agency": {
            "id": 29,
            "name": "Carlee Okuneva",
            "type": {
                "key": 1,
                "value": "COMPANY"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "user": {
            "id": 167,
            "first_name": "Ms. Rachael Ullrich",
            "last_name": "Prof. Trystan Durgan",
            "phone": "+12546274821",
            "is_employee": 1
        }
    },
    "message": "The Employee updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/employees/{id}

PATCH api/v1/admin/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 15

Body Parameters

national_id   string  optional  

Must not be greater than 255 characters. Example: kyjvfhxoljkjudehupuj

type   integer  optional  

Example: 5

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
user_id   string  optional  
agency_id   string  optional  

Delete specific employee

requires authentication

This endpoint lets you delete specific employee

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/employees/13" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/employees/13"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Employee deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 13

service

APIs for Service Management

Show all services

requires authentication

This endpoint lets you show all services

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/services?page=12&per_page=4&filter%5Bid%5D=et&filter%5Btitle%5D=esse&filter%5Bdescription%5D=rerum&sort=quibusdam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/services"
);

const params = {
    "page": "12",
    "per_page": "4",
    "filter[id]": "et",
    "filter[title]": "esse",
    "filter[description]": "rerum",
    "sort": "quibusdam",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 10,
            "title": "Mrs.",
            "title_ar": "Mrs.",
            "description": "Facere odio non vel aut aut autem ab facere. Asperiores neque dolor quia quod quaerat. Necessitatibus accusamus a velit autem laborum et nihil repellat.",
            "description_ar": "Quo suscipit sunt modi deserunt enim. Eius molestiae qui rerum exercitationem repellendus suscipit dolorem.",
            "icon": "https://via.placeholder.com/640x480.png/00eeff?text=sit"
        },
        {
            "id": 9,
            "title": "Dr.",
            "title_ar": "Dr.",
            "description": "Vel nihil qui nemo voluptates dignissimos accusamus. Est sed et aliquid consequatur quia. Aut ipsa dolor eum sit voluptate voluptates accusamus natus. Quos similique similique voluptas dignissimos.",
            "description_ar": "Distinctio dolorum sapiente adipisci. Unde molestias eos est quia eos est quas. Id et corrupti est distinctio qui quo aut. Quia eum corrupti hic qui.",
            "icon": "https://via.placeholder.com/640x480.png/00aaaa?text=qui"
        },
        {
            "id": 8,
            "title": "Prof.",
            "title_ar": "Dr.",
            "description": "Officia ut harum autem explicabo aliquam odit. Voluptatem aut adipisci omnis qui omnis excepturi. Non incidunt quibusdam possimus voluptatem cupiditate. Rerum delectus nemo et occaecati pariatur nostrum expedita.",
            "description_ar": "Atque ea harum cumque veniam voluptatibus voluptatem. Expedita iusto aut cum aperiam. Eum et dolor distinctio neque et laudantium.",
            "icon": "https://via.placeholder.com/640x480.png/00dd99?text=aspernatur"
        },
        {
            "id": 7,
            "title": "Dr.",
            "title_ar": "Dr.",
            "description": "Repudiandae sapiente accusamus quaerat tempora vitae. Aut alias sequi voluptatem sequi. Consequuntur soluta architecto necessitatibus nesciunt voluptates praesentium numquam. Quia ut ratione nemo quo dolorem maxime.",
            "description_ar": "Excepturi animi porro ut quam ad necessitatibus voluptatem mollitia. Aliquam rerum qui quae magni. Eius earum aut enim atque. Nesciunt omnis eum quo eos reiciendis praesentium fugit.",
            "icon": "https://via.placeholder.com/640x480.png/00aadd?text=sed"
        },
        {
            "id": 6,
            "title": "Dr.",
            "title_ar": "Prof.",
            "description": "Accusantium illum sint aliquam fugiat et atque hic non. Harum voluptatem assumenda voluptatem vel perspiciatis. Provident iusto magnam itaque inventore ipsa. Vero et culpa eos iure blanditiis recusandae.",
            "description_ar": "Quisquam nam ea delectus eum ea. Aut at nesciunt ut. Incidunt nulla quo voluptatem ea. Adipisci quo earum a nam minima cum.",
            "icon": "https://via.placeholder.com/640x480.png/00eebb?text=consectetur"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/services

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 12

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 4

filter[id]   string  optional  

Field to filter items by id. Example: et

filter[title]   string  optional  

Field to filter items by title. Example: esse

filter[description]   string  optional  

Field to filter items by description. Example: rerum

sort   string  optional  

Field to sort items by id,title. Example: quibusdam

Add Service

requires authentication

This endpoint lets you add service

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/services" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=hphkaxttsxtyo"\
    --form "title_ar=mjrylxcqokroqpymsmefyxe"\
    --form "description=Voluptates consectetur illo quis veniam minima vitae similique."\
    --form "description_ar=hyzmb"\
    --form "icon=@/tmp/phpaoJnNl" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/services"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('title', 'hphkaxttsxtyo');
body.append('title_ar', 'mjrylxcqokroqpymsmefyxe');
body.append('description', 'Voluptates consectetur illo quis veniam minima vitae similique.');
body.append('description_ar', 'hyzmb');
body.append('icon', document.querySelector('input[name="icon"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 5,
        "title": "Service title",
        "title_ar": "اسم الخدمة",
        "description": "service description",
        "description_ar": "وصف الخدمة",
        "icon": "https://dev.almoualemaqare.com/storage/services/66dd4511d75a3.jpg"
    },
    "message": "The Service added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/services

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

title   string   

Must not be greater than 255 characters. Example: hphkaxttsxtyo

title_ar   string   

Must not be greater than 255 characters. Example: mjrylxcqokroqpymsmefyxe

description   string   

Must not be greater than 255 characters. Example: Voluptates consectetur illo quis veniam minima vitae similique.

description_ar   string   

Must not be greater than 255 characters. Example: hyzmb

icon   file   

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpaoJnNl

Show specific service

requires authentication

This endpoint lets you show specific service

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 4,
        "title": "Prof.",
        "title_ar": "Dr.",
        "description": "Delectus magnam ea debitis id omnis fugiat. Et modi impedit nisi ad ex minus. Fugiat porro laudantium quae soluta vel laboriosam.",
        "description_ar": "Et dolorum ut minus asperiores eum. Quia quia aut omnis et qui doloribus. Dolorem fugit et eveniet amet esse ea.",
        "icon": "https://via.placeholder.com/640x480.png/0088bb?text=aut"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/services/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the service. Example: 1

Update specific Service

requires authentication

This endpoint lets you update specific service

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "title=taykjrvjee"\
    --form "title_ar=qfsrhsit"\
    --form "description=Velit incidunt iure modi sed sunt voluptatem delectus."\
    --form "description_ar=luwbwrygpvymme"\
    --form "icon=@/tmp/phpFgCFGJ" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('title', 'taykjrvjee');
body.append('title_ar', 'qfsrhsit');
body.append('description', 'Velit incidunt iure modi sed sunt voluptatem delectus.');
body.append('description_ar', 'luwbwrygpvymme');
body.append('icon', document.querySelector('input[name="icon"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 7,
        "title": "new title",
        "title_ar": "Dr.",
        "description": "Consectetur rerum voluptatem voluptas inventore fugiat maiores voluptas omnis. Aut ex inventore ut provident. Dolor aut ipsa laudantium molestias consequatur maxime nihil.",
        "description_ar": "Esse natus dolorem quae molestiae officia rerum voluptatum. Dolores odit et eum velit. Enim et sapiente qui est.",
        "icon": "https://via.placeholder.com/640x480.png/007766?text=repellat"
    },
    "message": "The Service updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/services/{id}

PATCH api/v1/admin/services/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the service. Example: 1

Body Parameters

title   string  optional  

Must not be greater than 255 characters. Example: taykjrvjee

title_ar   string  optional  

Must not be greater than 255 characters. Example: qfsrhsit

description   string  optional  

Must not be greater than 255 characters. Example: Velit incidunt iure modi sed sunt voluptatem delectus.

description_ar   string  optional  

Must not be greater than 255 characters. Example: luwbwrygpvymme

icon   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpFgCFGJ

Delete specific Service

requires authentication

This endpoint lets you delete specific service

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/services/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/services/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Service deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/services/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the service. Example: 1

location

APIs for Location Management

Show all locations

requires authentication

This endpoint lets you show all locations

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/locations?page=5&per_page=9&filter%5Bid%5D=ut&filter%5Barea%5D=sit&filter%5Bsearch%5D=occaecati&sort=et" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/locations"
);

const params = {
    "page": "5",
    "per_page": "9",
    "filter[id]": "ut",
    "filter[area]": "sit",
    "filter[search]": "occaecati",
    "sort": "et",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 105,
            "area": "Jerry Farrell",
            "area_ar": "Dr. Newton Jones II",
            "city": {
                "id": 106,
                "name": "Maegan Cartwright",
                "name_ar": "Isac Olson"
            }
        },
        {
            "id": 104,
            "area": "Prof. Tad Feeney",
            "area_ar": "Devan Crist",
            "city": {
                "id": 105,
                "name": "Chase Frami",
                "name_ar": "Sheila Schumm"
            }
        },
        {
            "id": 103,
            "area": "Prof. Devante Paucek",
            "area_ar": "Darrick Zieme",
            "city": {
                "id": 104,
                "name": "Rosanna Thompson Sr.",
                "name_ar": "Frank Murphy"
            }
        },
        {
            "id": 102,
            "area": "Vito Volkman",
            "area_ar": "Dr. Haley Reichert Sr.",
            "city": {
                "id": 103,
                "name": "Montana Jenkins",
                "name_ar": "Mrs. Vernice Wehner"
            }
        },
        {
            "id": 101,
            "area": "Keyshawn Spencer",
            "area_ar": "Matilda Veum Sr.",
            "city": {
                "id": 102,
                "name": "Prof. Edmund Purdy Jr.",
                "name_ar": "Prof. Olin Parker"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/locations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 5

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 9

filter[id]   string  optional  

Field to filter items by id. Example: ut

filter[area]   string  optional  

Field to filter items by area. Example: sit

filter[search]   string  optional  

Field to perform a custom search. Example: occaecati

sort   string  optional  

Field to sort items by id,area. Example: et

Add Location

requires authentication

This endpoint lets you add Location

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/admin/locations" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"area\": \"rzuecklklpnybesp\",
    \"area_ar\": \"dahhyidsgwcfkitxtajzgwrco\",
    \"city_id\": \"totam\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/locations"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "area": "rzuecklklpnybesp",
    "area_ar": "dahhyidsgwcfkitxtajzgwrco",
    "city_id": "totam"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 12,
        "area": "location area",
        "area_ar": "اسم المنطقة",
        "city": {
            "id": 21,
            "name": "Dr. Osvaldo Mayer III",
            "name_ar": "Dr. Everardo Hyatt I"
        }
    },
    "message": "The Location added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/admin/locations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

area   string   

Must not be greater than 255 characters. Example: rzuecklklpnybesp

area_ar   string   

Must not be greater than 255 characters. Example: dahhyidsgwcfkitxtajzgwrco

city_id   string   

Example: totam

Show specific location

requires authentication

This endpoint lets you show specific location

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/locations/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/locations/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11,
        "area": "Lilla Kunde",
        "area_ar": "Ashton O'Kon",
        "city": {
            "id": 18,
            "name": "Dr. Christopher Beatty",
            "name_ar": "Nina Mertz Sr."
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/locations/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the location. Example: 1

Update specific Location

requires authentication

This endpoint lets you update specific Location

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/locations/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"area\": \"kdlnlbiixuwovproeuybpzcu\",
    \"area_ar\": \"gwrqxaghdfjmrbpswvqbetvd\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/locations/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "area": "kdlnlbiixuwovproeuybpzcu",
    "area_ar": "gwrqxaghdfjmrbpswvqbetvd"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 15,
        "area": "Test",
        "area_ar": "Mathias Muller Jr.",
        "city": {
            "id": 11111166,
            "name": "Mrs. Estell Okuneva PhD",
            "name_ar": "Russ Schuppe"
        }
    },
    "message": "The Location updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/locations/{id}

PATCH api/v1/admin/locations/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the location. Example: 1

Body Parameters

area   string  optional  

Must not be greater than 255 characters. Example: kdlnlbiixuwovproeuybpzcu

area_ar   string  optional  

Must not be greater than 255 characters. Example: gwrqxaghdfjmrbpswvqbetvd

city_id   string  optional  

Delete specific Location

requires authentication

This endpoint lets you delete specific Location

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/locations/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/locations/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Location deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/locations/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the location. Example: 1

User Report

APIs for User Report Management

Show all user reports

requires authentication

This endpoint lets user show all User Reports

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/user_reports?page=5&per_page=20&filter%5Bid%5D=omnis&filter%5Bcomment%5D=saepe&filter%5Bstatus%5D=sunt&filter%5Buser_id%5D=nihil&filter%5Bsearch%5D=dolorem&sort=ab" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports"
);

const params = {
    "page": "5",
    "per_page": "20",
    "filter[id]": "omnis",
    "filter[comment]": "saepe",
    "filter[status]": "sunt",
    "filter[user_id]": "nihil",
    "filter[search]": "dolorem",
    "sort": "ab",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11,
            "comment": "Ipsam ratione sed modi dolorum beatae.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 11111194,
                "first_name": "Ms. Audreanne Breitenberg",
                "last_name": "Garland Lehner",
                "phone": "+1-984-419-2534",
                "is_employee": 1
            },
            "model": {
                "id": 11111148,
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "min_price": 220,
                "max_price": 962,
                "area_sqm": 2022,
                "location": "Toy Roberts I"
            },
            "type": "ORDER"
        },
        {
            "id": 10,
            "comment": "Aliquam sunt vel voluptate quo.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 11111192,
                "first_name": "Viola Homenick",
                "last_name": "Malvina Borer",
                "phone": "+1-341-725-1605",
                "is_employee": 1
            },
            "model": {
                "id": 11111147,
                "property_type": {
                    "key": 3,
                    "value": "VILLA"
                },
                "min_price": 480,
                "max_price": 954,
                "area_sqm": 4580,
                "location": "Donnell Strosin"
            },
            "type": "ORDER"
        },
        {
            "id": 9,
            "comment": "Eos rerum eveniet eaque.",
            "status": {
                "key": 3,
                "value": "REJECTED"
            },
            "user": {
                "id": 11111190,
                "first_name": "Mr. Nikolas White DDS",
                "last_name": "Assunta Schultz",
                "phone": "+1-319-297-7530",
                "is_employee": 1
            },
            "model": {
                "id": 11111146,
                "property_type": {
                    "key": 5,
                    "value": "OFFICE"
                },
                "min_price": 451,
                "max_price": 602,
                "area_sqm": 4141,
                "location": "Libbie Kilback DVM"
            },
            "type": "ORDER"
        },
        {
            "id": 8,
            "comment": "Iure quo aut alias minus et adipisci officia.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 11111188,
                "first_name": "Kolby Hudson",
                "last_name": "Dr. Nils Cummings DVM",
                "phone": "+1-929-962-8974",
                "is_employee": 1
            },
            "model": {
                "id": 11111145,
                "property_type": {
                    "key": 2,
                    "value": "SHOP"
                },
                "min_price": 387,
                "max_price": 956,
                "area_sqm": 688,
                "location": "Sheridan O'Kon"
            },
            "type": "ORDER"
        },
        {
            "id": 7,
            "comment": "Vel error iusto nam.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 11111186,
                "first_name": "Ms. Florida Morar II",
                "last_name": "Prof. Khalil Prohaska",
                "phone": "+1-231-566-3504",
                "is_employee": 1
            },
            "model": {
                "id": 11111144,
                "property_type": {
                    "key": 9,
                    "value": "HOTEL"
                },
                "min_price": 262,
                "max_price": 739,
                "area_sqm": 3897,
                "location": "Prof. Rahul Bosco Sr."
            },
            "type": "ORDER"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/user_reports

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 5

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 20

filter[id]   string  optional  

Field to filter items by id. Example: omnis

filter[comment]   string  optional  

Field to filter items by comment. Example: saepe

filter[status]   string  optional  

Field to filter items by status. Example: sunt

filter[user_id]   string  optional  

Field to filter items by user_id. Example: nihil

filter[search]   string  optional  

Field to perform a custom search. Example: dolorem

sort   string  optional  

Field to sort items by id,status,comment. Example: ab

Show specific user report

requires authentication

This endpoint lets specific user report

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "comment": "Quia repellendus vel praesentium saepe ut consequatur non atque.",
        "status": {
            "key": 3,
            "value": "REJECTED"
        },
        "user": {
            "id": 480,
            "first_name": "Sydnie Runolfsson",
            "last_name": "Gregorio Blick DDS",
            "phone": "+1 (954) 753-1382",
            "is_employee": 1
        },
        "model": {
            "id": 12,
            "property_type": {
                "key": 6,
                "value": "FARM"
            },
            "min_price": 139,
            "max_price": 887,
            "area_sqm": 1240,
            "location": "Mrs. Penelope Flatley III"
        },
        "type": "ORDER"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/admin/user_reports/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user report. Example: 1

Update specific report

requires authentication

This endpoint lets user update specific report

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"comment\": \"cpcyymiaevycrlfwl\",
    \"status\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "comment": "cpcyymiaevycrlfwl",
    "status": 1
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "comment": "Comment User Report Comment",
        "status": {
            "key": 2,
            "value": "ACTIVE"
        },
        "user": {
            "id": 10562,
            "first_name": "Corrine Abernathy MD",
            "last_name": "Mr. Guiseppe Borer IV",
            "phone": "+1-352-913-9971",
            "is_employee": 1
        },
        "model": {
            "id": 13,
            "property_type": {
                "key": 4,
                "value": "BUILDING"
            },
            "min_price": 243,
            "max_price": 707,
            "area_sqm": 4706,
            "location": "Mr. Lucio Mertz"
        },
        "type": "ORDER"
    },
    "message": "The User Report updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/admin/user_reports/{id}

PATCH api/v1/admin/user_reports/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user report. Example: 1

Body Parameters

comment   string  optional  

Must not be greater than 255 characters. Example: cpcyymiaevycrlfwl

status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3

Delete specific user report

requires authentication

This endpoint lets user delete specific user report

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/admin/user_reports/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The User Report deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/admin/user_reports/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the user report. Example: 1

Agency

APIs for Agency Management

Client

APIs for Client Management

Show all clients

requires authentication

This endpoint lets you show all clients

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients?page=16&per_page=6&filter%5Bid%5D=optio&filter%5Bfirst_name%5D=atque&filter%5Blast_name%5D=velit&filter%5Bsearch%5D=velit&sort=reprehenderit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients"
);

const params = {
    "page": "16",
    "per_page": "6",
    "filter[id]": "optio",
    "filter[first_name]": "atque",
    "filter[last_name]": "velit",
    "filter[search]": "velit",
    "sort": "reprehenderit",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111190,
            "client_name": "Kade Turner Georgiana Legros"
        },
        {
            "id": 11111189,
            "client_name": "Dr. Nico Nicolas Noe Rodriguez Sr."
        },
        {
            "id": 11111188,
            "client_name": "Dr. Milan Greenfelder Jr. Dr. Jayce Upton V"
        },
        {
            "id": 11111187,
            "client_name": "Uriah O'Hara Georgianna Ernser"
        },
        {
            "id": 11111186,
            "client_name": "Lucie Connelly Leta Walter"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/clients

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 16

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 6

filter[id]   string  optional  

Field to filter items by id. Example: optio

filter[first_name]   string  optional  

Field to filter items by first_name. Example: atque

filter[last_name]   string  optional  

Field to filter items by last_name. Example: velit

filter[search]   string  optional  

Field to perform a custom search. Example: velit

sort   string  optional  

Field to sort items by id,first_name,last_name,job. Example: reprehenderit

Add Client

requires authentication

This endpoint lets you add client

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=legxyhhzq"\
    --form "last_name=slrxckoyncgbv"\
    --form "job=damhtn"\
    --form "notes=xqbizmxlbkiigtxskfomxiw"\
    --form "phone=omnis"\
    --form "image=@/tmp/phpeOkciJ" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'legxyhhzq');
body.append('last_name', 'slrxckoyncgbv');
body.append('job', 'damhtn');
body.append('notes', 'xqbizmxlbkiigtxskfomxiw');
body.append('phone', 'omnis');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 111121,
        "first_name": "Ahmad",
        "last_name": "Ahmad",
        "phone": "+963994622354",
        "job": "Developer",
        "image": "https://dev.almoualemaqare.com/storage/clients/tmp/phpllJEHa",
        "notes": "I am client"
    },
    "message": "The Client added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/agencies/clients

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string   

Must not be greater than 255 characters. Example: legxyhhzq

last_name   string   

Must not be greater than 255 characters. Example: slrxckoyncgbv

job   string  optional  

Must not be greater than 255 characters. Example: damhtn

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpeOkciJ

notes   string  optional  

Must not be greater than 255 characters. Example: xqbizmxlbkiigtxskfomxiw

phone   string   

Example: omnis

Show specific client

requires authentication

This endpoint lets you show specific client

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/16" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/16"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 111120,
        "first_name": "Kylie Dickens",
        "last_name": "Suzanne Bechtelar",
        "phone": "1-458-797-4056",
        "job": "Illo ea id optio aut provident et.",
        "image": "https://dev.almoualemaqare.com/storage/clients/client.png",
        "notes": "Autem eos ducimus porro voluptates eveniet consequuntur quod."
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 16

Update specific client

requires authentication

This endpoint lets you update specific client

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/7" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=p"\
    --form "last_name=rbk"\
    --form "job=ntenzonoixjayuhkwvl"\
    --form "notes=fvhspibrldm"\
    --form "image=@/tmp/phpHBLGnh" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/7"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'p');
body.append('last_name', 'rbk');
body.append('job', 'ntenzonoixjayuhkwvl');
body.append('notes', 'fvhspibrldm');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 111124,
        "first_name": "Mohammad",
        "last_name": "Ahmad",
        "phone": "231.206.7588",
        "job": "Developer",
        "image": "https://dev.almoualemaqare.com/storage/clients/66dd4518ad87b.jpg",
        "notes": "I am client"
    },
    "message": "The Client updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/agencies/clients/{id}

PATCH api/v1/mobile/agencies/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 7

Body Parameters

first_name   string  optional  

Must not be greater than 255 characters. Example: p

last_name   string  optional  

Must not be greater than 255 characters. Example: rbk

job   string  optional  

Must not be greater than 255 characters. Example: ntenzonoixjayuhkwvl

image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpHBLGnh

notes   string  optional  

Must not be greater than 255 characters. Example: fvhspibrldm

phone   string  optional  

Delete specific Client

requires authentication

This endpoint lets you delete specific client

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/18" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/clients/18"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Client deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/agencies/clients/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the client. Example: 18

Employee

APIs for Employee Management

Show all employees

requires authentication

This endpoint lets you show all employees

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees?page=17&per_page=7&filter%5Bid%5D=fugit&filter%5Btype%5D=accusantium&filter%5Bstatus%5D=sit&sort=dolore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees"
);

const params = {
    "page": "17",
    "per_page": "7",
    "filter[id]": "fugit",
    "filter[type]": "accusantium",
    "filter[status]": "sit",
    "sort": "dolore",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111156,
            "employee_name": "Maegan Grant MD Lorenzo Will PhD",
            "type": {
                "key": 2,
                "value": "MANAGER"
            }
        },
        {
            "id": 11111155,
            "employee_name": "Kayla Heathcote PhD Gwendolyn Wiza",
            "type": {
                "key": 3,
                "value": "NORMAL"
            }
        },
        {
            "id": 11111154,
            "employee_name": "Pinkie Mraz Prof. Reuben Shields",
            "type": {
                "key": 5,
                "value": "BOY"
            }
        },
        {
            "id": 11111153,
            "employee_name": "Prof. Johnnie Jones MD Prof. Cecelia Quigley",
            "type": {
                "key": 5,
                "value": "BOY"
            }
        },
        {
            "id": 11111152,
            "employee_name": "Lilian Smith Elena Doyle",
            "type": {
                "key": 4,
                "value": "DRIVER"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/employees

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 17

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 7

filter[id]   string  optional  

Field to filter items by id. Example: fugit

filter[type]   string  optional  

Field to filter items by type. Example: accusantium

filter[status]   string  optional  

Field to filter items by status. Example: sit

sort   string  optional  

Field to sort items by id,type,status. Example: dolore

Add Employee

requires authentication

This endpoint lets you add employee

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=vkyfhwimaatyfuoaqcudf"\
    --form "last_name=mjeeqtbtsdh"\
    --form "national_id=ouzoiljfxkf"\
    --form "phone=dolorum"\
    --form "notes=gczttdyrovnivezpdudx"\
    --form "password=#irSB:KdVI7@<J2AT"\
    --form "type=1"\
    --form "status=2"\
    --form "id_image=@/tmp/phpLkJaBh" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'vkyfhwimaatyfuoaqcudf');
body.append('last_name', 'mjeeqtbtsdh');
body.append('national_id', 'ouzoiljfxkf');
body.append('phone', 'dolorum');
body.append('notes', 'gczttdyrovnivezpdudx');
body.append('password', '#irSB:KdVI7@<J2AT');
body.append('type', '1');
body.append('status', '2');
body.append('id_image', document.querySelector('input[name="id_image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 8,
        "national_id": "12",
        "type": {
            "key": 2,
            "value": "MANAGER"
        },
        "status": {
            "key": 1,
            "value": "ACTIVE"
        },
        "id_image": "https://dev.almoualemaqare.com/storage/employees/tmp/phpCnChCb",
        "user": {
            "id": 11111346,
            "first_name": "joe",
            "last_name": "joe",
            "phone": "+963987654321",
            "is_employee": 0
        },
        "notes": "first employee"
    },
    "message": "The Employee added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/agencies/employees

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string   

Must not be greater than 255 characters. Example: vkyfhwimaatyfuoaqcudf

last_name   string   

Must not be greater than 255 characters. Example: mjeeqtbtsdh

national_id   string  optional  

Must not be greater than 255 characters. Example: ouzoiljfxkf

id_image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpLkJaBh

phone   string   

Example: dolorum

notes   string  optional  

Must not be greater than 255 characters. Example: gczttdyrovnivezpdudx

password   string   

Must be at least 6 characters. Example: #irSB:KdVI7@<J2AT

type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2

Show specific employee

requires authentication

This endpoint lets you show specific employee

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/2"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "national_id": "Vel ut dolorem dolor sapiente.",
        "type": {
            "key": 5,
            "value": "BOY"
        },
        "status": {
            "key": 1,
            "value": "ACTIVE"
        },
        "id_image": "https://dev.almoualemaqare.com/storage/employees/image.png",
        "user": {
            "id": 10656,
            "first_name": "Dr. Aylin Schneider",
            "last_name": "Maddison Walsh",
            "phone": "+1 (478) 887-0778",
            "is_employee": 1
        },
        "notes": null
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 2

Update specific employee

requires authentication

This endpoint lets you update specific employee

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/4" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=nrqzsvsabkthuaezeqzdlhcrn"\
    --form "last_name=raaasfrsxeulxchsri"\
    --form "national_id=sikbz"\
    --form "phone=aliquid"\
    --form "notes=eyt"\
    --form "password=uAkne;4ZxPx8wYq4q88"\
    --form "type=3"\
    --form "status=1"\
    --form "id_image=@/tmp/phpceieeI" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/4"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'nrqzsvsabkthuaezeqzdlhcrn');
body.append('last_name', 'raaasfrsxeulxchsri');
body.append('national_id', 'sikbz');
body.append('phone', 'aliquid');
body.append('notes', 'eyt');
body.append('password', 'uAkne;4ZxPx8wYq4q88');
body.append('type', '3');
body.append('status', '1');
body.append('id_image', document.querySelector('input[name="id_image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 5,
        "national_id": "123456",
        "type": {
            "key": 1,
            "value": "OWNER"
        },
        "status": {
            "key": 1,
            "value": "ACTIVE"
        },
        "id_image": "https://dev.almoualemaqare.com/storage/employees/image.png",
        "user": {
            "id": 10669,
            "first_name": "joe",
            "last_name": "doe",
            "phone": "+1-442-426-8800",
            "is_employee": 1
        },
        "notes": null
    },
    "message": "The Employee updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/agencies/employees/{id}

PATCH api/v1/mobile/agencies/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 4

Body Parameters

first_name   string  optional  

Must not be greater than 255 characters. Example: nrqzsvsabkthuaezeqzdlhcrn

last_name   string  optional  

Must not be greater than 255 characters. Example: raaasfrsxeulxchsri

national_id   string  optional  

Must not be greater than 255 characters. Example: sikbz

id_image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpceieeI

phone   string  optional  

Example: aliquid

notes   string  optional  

Must not be greater than 255 characters. Example: eyt

password   string  optional  

Must be at least 6 characters. Example: uAkne;4ZxPx8wYq4q88

type   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2

Delete specific employee

requires authentication

This endpoint lets you delete specific employee

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/9" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/employees/9"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Employee deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/agencies/employees/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the employee. Example: 9

Chat

APIs for Chat Management

Show all agency chats

requires authentication

This endpoint lets agency show all chats

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "chat_id": 10,
            "user": {
                "id": 11111369,
                "name": "Louisa Upton Pauline Pfeffer"
            },
            "receiver": {
                "id": 43,
                "name": "Roxanne Klocko",
                "logo": "logo.png"
            },
            "type": "AGENCY",
            "last_message": {
                "message": "Accusamus ut aut consectetur eos.",
                "timestamp": "2024-09-08T06:33:01.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 9,
            "user": {
                "id": 11111367,
                "name": "Prof. Keshaun Schimmel Miss Earline Spinka"
            },
            "receiver": {
                "id": 43,
                "name": "Roxanne Klocko",
                "logo": "logo.png"
            },
            "type": "AGENCY",
            "last_message": {
                "message": "Aut consequuntur libero veniam necessitatibus voluptates.",
                "timestamp": "2024-09-08T06:33:01.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 8,
            "user": {
                "id": 11111365,
                "name": "Thad Wolf Gerson Rowe"
            },
            "receiver": {
                "id": 43,
                "name": "Roxanne Klocko",
                "logo": "logo.png"
            },
            "type": "AGENCY",
            "last_message": {
                "message": "Nulla harum aut quisquam asperiores in unde maiores.",
                "timestamp": "2024-09-08T06:33:01.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 7,
            "user": {
                "id": 11111363,
                "name": "Felipe Douglas IV Prof. Therese Metz PhD"
            },
            "receiver": {
                "id": 43,
                "name": "Roxanne Klocko",
                "logo": "logo.png"
            },
            "type": "AGENCY",
            "last_message": {
                "message": "Et iste ducimus impedit dolorem.",
                "timestamp": "2024-09-08T06:33:00.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 6,
            "user": {
                "id": 11111361,
                "name": "Laurie Yost Ms. Alisa Osinski"
            },
            "receiver": {
                "id": 43,
                "name": "Roxanne Klocko",
                "logo": "logo.png"
            },
            "type": "AGENCY",
            "last_message": {
                "message": "Suscipit laborum voluptatem repellendus esse recusandae consequatur consequatur magnam.",
                "timestamp": "2024-09-08T06:33:00.000000Z"
            },
            "unread_messages_count": 0
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/{agency_id}/chats

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Show specific agency chat messages

requires authentication

This endpoint lets user in agency show specific chat messages $this->authorize('viewAgencyChatMessages', [$agency]);

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats/1/messages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats/1/messages"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "chat": {
                "id": 1
            },
            "message_id": 10,
            "sender": {
                "name": "Margie Jaskolski Verner Wyman",
                "id": 10710
            },
            "message": "Alias suscipit qui et sunt adipisci voluptatem et.",
            "timestamp": "2024-09-08T06:33:02.000000Z",
            "status": {
                "key": 1,
                "value": "READ"
            },
            "message_type": {
                "key": 3,
                "value": "IMAGE"
            }
        },
        {
            "chat": {
                "id": 1
            },
            "message_id": 9,
            "sender": {
                "name": "Ms. Retta Herzog PhD Kory Skiles",
                "id": 10707
            },
            "message": "Est sunt sed repellat earum.",
            "timestamp": "2024-09-08T06:33:02.000000Z",
            "status": {
                "key": 3,
                "value": "RECEIVE"
            },
            "message_type": {
                "key": 1,
                "value": "TEXT"
            }
        },
        {
            "chat": {
                "id": 1
            },
            "message_id": 8,
            "sender": {
                "name": "Herbert Hodkiewicz Sr. Dr. Eudora King",
                "id": 10704
            },
            "message": "Sed et eius et ut.",
            "timestamp": "2024-09-08T06:33:02.000000Z",
            "status": {
                "key": 1,
                "value": "READ"
            },
            "message_type": {
                "key": 3,
                "value": "IMAGE"
            }
        },
        {
            "chat": {
                "id": 1
            },
            "message_id": 7,
            "sender": {
                "name": "Prof. Kiarra Hand V Caleigh Parisian III",
                "id": 10701
            },
            "message": "Laborum fugiat dolorum quos cum aut officiis autem.",
            "timestamp": "2024-09-08T06:33:02.000000Z",
            "status": {
                "key": 2,
                "value": "UNREAD"
            },
            "message_type": {
                "key": 2,
                "value": "VIDEO"
            }
        },
        {
            "chat": {
                "id": 1
            },
            "message_id": 6,
            "sender": {
                "name": "Ellis Schroeder Kassandra Eichmann",
                "id": 10698
            },
            "message": "Laborum corrupti quaerat id voluptatem.",
            "timestamp": "2024-09-08T06:33:02.000000Z",
            "status": {
                "key": 2,
                "value": "UNREAD"
            },
            "message_type": {
                "key": 3,
                "value": "IMAGE"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/{agency_id}/chats/{chat_id}/messages

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

chat_id   integer   

The ID of the chat. Example: 1

Send Message

requires authentication

This endpoint lets user in agency send message

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"message\": \"labore\",
    \"receiver_id\": \"dolorem\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/chats"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "message": "labore",
    "receiver_id": "dolorem"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "chat": {
            "id": 17
        },
        "message_id": 16,
        "sender": {
            "name": "Mr. Brenden Grady MD Pattie Shields",
            "id": 10730
        },
        "message": "Hello, receiver!",
        "timestamp": "2024-09-08T06:33:06.000000Z",
        "status": {
            "key": 2,
            "value": "UNREAD"
        },
        "message_type": {
            "key": 1,
            "value": "TEXT"
        }
    },
    "message": "The message was sent successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/agencies/{agency_id}/chats

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Body Parameters

message   string   

Example: labore

receiver_id   string   

Example: dolorem

Show all user chats

requires authentication

This endpoint lets user show all chats

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/chats" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/chats"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "chat_id": 10,
            "user": {
                "id": 855,
                "name": "Ian Moen Mr. Xavier Harris"
            },
            "receiver": {
                "id": 875,
                "name": "Casimer King Agnes Jacobs",
                "photo": "user.png"
            },
            "type": "USER",
            "last_message": {
                "message": "Iusto ad sed delectus quas quis earum laboriosam.",
                "timestamp": "2024-09-08T06:33:22.000000Z"
            },
            "unread_messages_count": 1
        },
        {
            "chat_id": 9,
            "user": {
                "id": 855,
                "name": "Ian Moen Mr. Xavier Harris"
            },
            "receiver": {
                "id": 873,
                "name": "Mona Dicki Colleen Goyette MD",
                "photo": "user.png"
            },
            "type": "USER",
            "last_message": {
                "message": "Illum consequatur ab provident.",
                "timestamp": "2024-09-08T06:33:22.000000Z"
            },
            "unread_messages_count": 1
        },
        {
            "chat_id": 8,
            "user": {
                "id": 855,
                "name": "Ian Moen Mr. Xavier Harris"
            },
            "receiver": {
                "id": 871,
                "name": "Berry Douglas Jarrell Mraz",
                "photo": "user.png"
            },
            "type": "USER",
            "last_message": {
                "message": "Et dolorem nam consequuntur sed odit.",
                "timestamp": "2024-09-08T06:33:22.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 7,
            "user": {
                "id": 855,
                "name": "Ian Moen Mr. Xavier Harris"
            },
            "receiver": {
                "id": 869,
                "name": "Prof. Ardella Erdman I Dortha Purdy",
                "photo": "user.png"
            },
            "type": "USER",
            "last_message": {
                "message": "Voluptas maiores consequatur eius alias reiciendis consequatur commodi.",
                "timestamp": "2024-09-08T06:33:22.000000Z"
            },
            "unread_messages_count": 0
        },
        {
            "chat_id": 6,
            "user": {
                "id": 855,
                "name": "Ian Moen Mr. Xavier Harris"
            },
            "receiver": {
                "id": 867,
                "name": "Prof. Ceasar Borer DVM Prof. Mellie Lang MD",
                "photo": "user.png"
            },
            "type": "USER",
            "last_message": {
                "message": "Non est nobis corporis et et ea in.",
                "timestamp": "2024-09-08T06:33:22.000000Z"
            },
            "unread_messages_count": 0
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/chats

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Show specific user chat messages

requires authentication

This endpoint lets user show specific chat messages

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/chats/1/messages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/chats/1/messages"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "chat": {
                "id": 46
            },
            "message_id": 40,
            "sender": {
                "name": "Mrs. Fay Kihn Jr. Houston Lemke V",
                "id": 11111907
            },
            "message": "Nulla consequatur facilis et quae dignissimos expedita sed.",
            "timestamp": "2024-09-08T06:33:24.000000Z",
            "status": {
                "key": 1,
                "value": "READ"
            },
            "message_type": {
                "key": 2,
                "value": "VIDEO"
            }
        },
        {
            "chat": {
                "id": 46
            },
            "message_id": 39,
            "sender": {
                "name": "Tom Franecki Reinhold Lockman",
                "id": 11111904
            },
            "message": "Dolorum magnam iure et ab.",
            "timestamp": "2024-09-08T06:33:24.000000Z",
            "status": {
                "key": 2,
                "value": "UNREAD"
            },
            "message_type": {
                "key": 3,
                "value": "IMAGE"
            }
        },
        {
            "chat": {
                "id": 46
            },
            "message_id": 38,
            "sender": {
                "name": "Rudy Will Mr. Saul Larkin",
                "id": 11111901
            },
            "message": "Et asperiores nulla unde est amet hic.",
            "timestamp": "2024-09-08T06:33:24.000000Z",
            "status": {
                "key": 3,
                "value": "RECEIVE"
            },
            "message_type": {
                "key": 1,
                "value": "TEXT"
            }
        },
        {
            "chat": {
                "id": 46
            },
            "message_id": 37,
            "sender": {
                "name": "Vito McLaughlin Macy Nader DVM",
                "id": 11111898
            },
            "message": "Velit explicabo id rerum soluta aut quo rem.",
            "timestamp": "2024-09-08T06:33:24.000000Z",
            "status": {
                "key": 3,
                "value": "RECEIVE"
            },
            "message_type": {
                "key": 3,
                "value": "IMAGE"
            }
        },
        {
            "chat": {
                "id": 46
            },
            "message_id": 36,
            "sender": {
                "name": "Victoria Feeney Sr. Ariel Johnston",
                "id": 11111895
            },
            "message": "Ipsum explicabo temporibus aspernatur et et est.",
            "timestamp": "2024-09-08T06:33:24.000000Z",
            "status": {
                "key": 1,
                "value": "READ"
            },
            "message_type": {
                "key": 1,
                "value": "TEXT"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/chats/{chat_id}/messages

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

chat_id   integer   

The ID of the chat. Example: 1

Send Message

requires authentication

This endpoint lets user send message

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/chats" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"message\": \"amet\",
    \"receiver_id\": \"harum\",
    \"type\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/chats"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "message": "amet",
    "receiver_id": "harum",
    "type": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "chat": {
            "id": 46
        },
        "message_id": 31,
        "sender": {
            "name": "Shanie Block Denis Schroeder",
            "id": 976
        },
        "message": "Hello, receiver!",
        "timestamp": "2024-09-08T06:33:23.000000Z",
        "status": {
            "key": 2,
            "value": "UNREAD"
        },
        "message_type": {
            "key": 1,
            "value": "TEXT"
        }
    },
    "message": "The message was sent successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/chats

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

message   string   

Example: amet

receiver_id   string   

Example: harum

type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2

Configuration

APIs for global settings

get configuration

This endpoint lets you get current configuration

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/configurations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/configurations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "enums": {
            "property_type": [
                {
                    "key": 1,
                    "value": "APARTMENT",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/apartment.svg"
                },
                {
                    "key": 2,
                    "value": "SHOP",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/shop.svg"
                },
                {
                    "key": 3,
                    "value": "VILLA",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/villa.svg"
                },
                {
                    "key": 4,
                    "value": "BUILDING",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/all.svg"
                },
                {
                    "key": 5,
                    "value": "OFFICE",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/office.svg"
                },
                {
                    "key": 6,
                    "value": "FARM",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/farm.svg"
                },
                {
                    "key": 7,
                    "value": "CHALET",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/chalet.svg"
                },
                {
                    "key": 8,
                    "value": "LAND",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/land.svg"
                },
                {
                    "key": 9,
                    "value": "HOTEL",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/hotel.svg"
                },
                {
                    "key": 10,
                    "value": "OTHER",
                    "icon": "https://dev.almoualemaqare.com/storage/icons/property-type/all.svg"
                }
            ],
            "property_status": [
                {
                    "key": 1,
                    "value": "DRAFT"
                },
                {
                    "key": 2,
                    "value": "ACTIVE"
                },
                {
                    "key": 3,
                    "value": "EXPIRED"
                },
                {
                    "key": 4,
                    "value": "CLOSED_BY_USER"
                }
            ],
            "order_type": [
                {
                    "key": 1,
                    "value": "FOR_SALE"
                },
                {
                    "key": 2,
                    "value": "FOR_RENT"
                }
            ],
            "order_status": [
                {
                    "key": 1,
                    "value": "PENDING"
                },
                {
                    "key": 2,
                    "value": "APPROVED"
                },
                {
                    "key": 3,
                    "value": "REJECTED"
                },
                {
                    "key": 4,
                    "value": "ARCHIVED"
                },
                {
                    "key": 5,
                    "value": "UNDER_REVIEW"
                }
            ],
            "ownership_type": [
                {
                    "key": 1,
                    "value": "COURT_JUDGMENT"
                },
                {
                    "key": 2,
                    "value": "GREEN_TITLE_DEAD"
                },
                {
                    "key": 3,
                    "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                },
                {
                    "key": 4,
                    "value": "HOUSING_TITLE_DEAD"
                },
                {
                    "key": 5,
                    "value": "SHARES_TITLE_DEAD"
                },
                {
                    "key": 6,
                    "value": "OUTRIGHT_SALE_CONTRACT"
                },
                {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                {
                    "key": 8,
                    "value": "OTHER"
                }
            ],
            "furnishing_type": [
                {
                    "key": 1,
                    "value": "UNFURNISHED"
                },
                {
                    "key": 2,
                    "value": "SIMI_FURNISHED"
                },
                {
                    "key": 3,
                    "value": "FURNISHED"
                }
            ],
            "cladding_status": [
                {
                    "key": 1,
                    "value": "NEW"
                },
                {
                    "key": 2,
                    "value": "GOOD"
                },
                {
                    "key": 3,
                    "value": "OLD"
                },
                {
                    "key": 4,
                    "value": "BLOCK"
                },
                {
                    "key": 5,
                    "value": "DELUXE"
                },
                {
                    "key": 6,
                    "value": "SUPER_DELUXE"
                },
                {
                    "key": 7,
                    "value": "STRUCTURE_ONLY"
                }
            ],
            "advertisement_status": [
                {
                    "key": 1,
                    "value": "PENDING"
                },
                {
                    "key": 2,
                    "value": "APPROVED"
                },
                {
                    "key": 3,
                    "value": "REJECTED"
                },
                {
                    "key": 4,
                    "value": "ARCHIVED"
                },
                {
                    "key": 5,
                    "value": "UNDER_REVIEW"
                }
            ],
            "advertisement_privacy": [
                {
                    "key": 1,
                    "value": "PRIVATE"
                },
                {
                    "key": 2,
                    "value": "PUBLIC"
                }
            ],
            "directions": [
                {
                    "key": 1,
                    "value": "NORTH"
                },
                {
                    "key": 2,
                    "value": "WEST"
                },
                {
                    "key": 3,
                    "value": "SOUTH"
                },
                {
                    "key": 4,
                    "value": "EAST"
                },
                {
                    "key": 5,
                    "value": "NORTH_EAST"
                },
                {
                    "key": 6,
                    "value": "NORTH_WEST"
                },
                {
                    "key": 7,
                    "value": "SOUTH_EAST"
                },
                {
                    "key": 8,
                    "value": "SOUTH_WEST"
                },
                {
                    "key": 9,
                    "value": "NORTH_SOUTH"
                },
                {
                    "key": 10,
                    "value": "EAST_WEST"
                }
            ],
            "exhibitor_type": [
                {
                    "key": 1,
                    "value": "REAL_ESTATE_OFFICE"
                },
                {
                    "key": 2,
                    "value": "PROPERTY_OWNER"
                },
                {
                    "key": 3,
                    "value": "PROPERTY_AGENT"
                }
            ],
            "advertisement_tags": [
                {
                    "key": 1,
                    "value": "BEST"
                },
                {
                    "key": 2,
                    "value": "TEST_TAG"
                }
            ],
            "listing_type": [
                {
                    "key": 1,
                    "value": "FOR_SALE"
                },
                {
                    "key": 2,
                    "value": "FOR_RENT"
                }
            ],
            "agency_status": [
                {
                    "key": 1,
                    "value": "APPROVED"
                },
                {
                    "key": 2,
                    "value": "REJECTED"
                },
                {
                    "key": 3,
                    "value": "UNDER_REVIEW"
                }
            ],
            "chats_type": [
                {
                    "key": 1,
                    "value": "TEXT"
                },
                {
                    "key": 2,
                    "value": "FILE"
                },
                {
                    "key": 3,
                    "value": "IMAGE"
                },
                {
                    "key": 4,
                    "value": "AUDIO"
                }
            ],
            "message_status": [
                {
                    "key": 1,
                    "value": "READ"
                },
                {
                    "key": 2,
                    "value": "UNREAD"
                },
                {
                    "key": 3,
                    "value": "RECEIVE"
                }
            ],
            "message_type": [
                {
                    "key": 1,
                    "value": "TEXT"
                },
                {
                    "key": 2,
                    "value": "VIDEO"
                },
                {
                    "key": 3,
                    "value": "IMAGE"
                }
            ],
            "employees_type": [
                {
                    "key": 1,
                    "value": "OWNER"
                },
                {
                    "key": 2,
                    "value": "MANAGER"
                },
                {
                    "key": 3,
                    "value": "NORMAL"
                },
                {
                    "key": 4,
                    "value": "DRIVER"
                },
                {
                    "key": 5,
                    "value": "BOY"
                }
            ],
            "employees_status": [
                {
                    "key": 1,
                    "value": "ACTIVE"
                },
                {
                    "key": 2,
                    "value": "DISABLED"
                }
            ],
            "favorite_reference_type": [
                {
                    "key": 1,
                    "value": "PROPERTY"
                },
                {
                    "key": 2,
                    "value": "ADVERTISEMENT"
                },
                {
                    "key": 3,
                    "value": "ORDER"
                }
            ],
            "report_reference_type": [
                {
                    "key": 1,
                    "value": "ORDER"
                },
                {
                    "key": 2,
                    "value": "ADVERTISEMENT"
                }
            ],
            "report_status": [
                {
                    "key": 1,
                    "value": "UNDER_REVIEW"
                },
                {
                    "key": 2,
                    "value": "ACTIVE"
                },
                {
                    "key": 3,
                    "value": "REJECTED"
                }
            ],
            "review_status": [
                {
                    "key": 1,
                    "value": "UNDER_REVIEW"
                },
                {
                    "key": 2,
                    "value": "ACTIVE"
                },
                {
                    "key": 3,
                    "value": "REJECTED"
                }
            ],
            "review_reference_type": [
                {
                    "key": 1,
                    "value": "AGENCY"
                },
                {
                    "key": 2,
                    "value": "PROPERTY"
                },
                {
                    "key": 3,
                    "value": "ADVERTISEMENT"
                },
                {
                    "key": 4,
                    "value": "ORDER"
                }
            ],
            "rent_term": [
                {
                    "key": 1,
                    "value": "DAILY"
                },
                {
                    "key": 2,
                    "value": "WEEKLY"
                },
                {
                    "key": 3,
                    "value": "MONTHLY"
                },
                {
                    "key": 4,
                    "value": "YEARLY"
                }
            ],
            "sale_type": [
                {
                    "key": 1,
                    "value": "CASH"
                },
                {
                    "key": 2,
                    "value": "INSTALLMENT"
                }
            ],
            "chat_reference_type": [
                {
                    "key": 1,
                    "value": "USER"
                },
                {
                    "key": 2,
                    "value": "AGENCY"
                }
            ],
            "ledger_entry_status": [
                {
                    "key": 1,
                    "value": "PENDING"
                },
                {
                    "key": 2,
                    "value": "RECEIVED"
                },
                {
                    "key": 3,
                    "value": "DELETED"
                }
            ],
            "ledger_entry_type": [
                {
                    "key": 1,
                    "value": "WORK"
                },
                {
                    "key": 2,
                    "value": "PAYMENT"
                }
            ]
        },
        "social_links": {
            "facebook": "https://www.facebook.com/dubizzle/",
            "x": "https://twitter.com/dubizzle",
            "instagram": "https://www.instagram.com/dubizzle",
            "linkedin": "https://www.linkedin.com/company/dubizzle-com"
        },
        "about": {
            "telephone": "+963991198888",
            "email": "sales@almoualemaqare.com",
            "location": {
                "title": "Al Mazzeh Damascus, Syria",
                "link": "https://maps.app.goo.gl/MgXdNu1XjrmiAvqh9"
            }
        },
        "mobile_links": {
            "google_play": "https://play.google.com/store/apps/details?id=com.dubizzle.horizontal&hl=en_US",
            "app_store": "https://apps.apple.com/ae/app/dubizzle/id892172848",
            "qr": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d0/QR_code_for_mobile_English_Wikipedia.svg/1920px-QR_code_for_mobile_English_Wikipedia.svg.png"
        },
        "settings": {
            "compression_level": 90,
            "max_post_images": 5,
            "max_post_size": 2097152
        },
        "pages": {
            "logo": "https://dev.almoualemaqare.com/storage/assets/pages/logo.png",
            "who_we_are_page": "https://dev.almoualemaqare.com/storage/assets/pages/who_we_are.html",
            "privacy_policy_page": "https://dev.almoualemaqare.com/storage/assets/pages/privacy_policy.html"
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/configurations

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

check version

This endpoint lets you get current app version

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/check-version" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/check-version"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "message": "First Release",
        "os_type": 1,
        "backend_version": "1.0.0",
        "build_number": "0",
        "version": "1.0.0",
        "type": 1
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/check-version

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

User

APIs for User Management

Auth management

APIs for login, register and all about auth

Register

This endpoint lets you add a new user

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/register" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"ppcrhtzjkgems\",
    \"last_name\": \"wsmcoq\",
    \"password\": \"qui\",
    \"udid\": \"consectetur\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/register"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "first_name": "ppcrhtzjkgems",
    "last_name": "wsmcoq",
    "password": "qui",
    "udid": "consectetur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "token_type": "Bearer",
        "access_token": "CumTgubQIcFK8z7pyjZDTk2LFbZsidu81mdzrvpn",
        "access_expires_at": null,
        "profile": {
            "id": 11111487,
            "first_name": "John",
            "last_name": "Doe",
            "is_employee": 0,
            "phone": "+971555422373",
            "user_type": {
                "key": 1,
                "value": "USER"
            },
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": false,
            "permissions": null
        }
    },
    "message": "User registered successfully",
    "status_code": 200
}
 

Request      

POST api/v1/auth/register

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

first_name   string   

Must not be greater than 255 characters. Example: ppcrhtzjkgems

last_name   string   

Must not be greater than 255 characters. Example: wsmcoq

phone   string  optional  
password   string   

Example: qui

udid   string  optional  

Example: consectetur

fcm_token   string  optional  

This field is required when udid is present.

Validate phone

requires authentication

This endpoint lets you verify phone using otp code

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/verify-otp" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"otp_code\": \"odit\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/verify-otp"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "otp_code": "odit"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Phone verified successfully",
    "status_code": 200
}
 

Request      

POST api/v1/auth/verify-otp

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

otp_code   string   

Example: odit

Request Otp Code

requires authentication

This endpoint lets you request otp code

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/request-otp" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/request-otp"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Code is sent successfully",
    "retry_after": 60
}
 

Request      

POST api/v1/auth/request-otp

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

phone   string  optional  

Update user

requires authentication

This endpoint lets you update user's information

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/auth/update/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "first_name=kaa"\
    --form "last_name=otrlady"\
    --form "email=violet.wisoky@example.com"\
    --form "image=@/tmp/phpOgKADP" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/update/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('first_name', 'kaa');
body.append('last_name', 'otrlady');
body.append('email', 'violet.wisoky@example.com');
body.append('image', document.querySelector('input[name="image"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 10747,
        "first_name": "John",
        "last_name": "Doe",
        "is_employee": true,
        "phone": "+971555422373",
        "image": "https://dev.almoualemaqare.com/storage/users/66dd4524e758c.jpg",
        "has_verified_phone": true
    },
    "message": "Your information updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/auth/update/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

first_name   string  optional  

Must not be greater than 255 characters. Example: kaa

last_name   string  optional  

Must not be greater than 255 characters. Example: otrlady

email   string  optional  

Must be a valid email address. Must not be greater than 255 characters. Example: violet.wisoky@example.com

phone   string  optional  
image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpOgKADP

Show user's profile

requires authentication

This endpoint lets you show user's authenticated profile

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/auth/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "first_name": "Test1",
        "last_name": "Test1",
        "is_employee": true,
        "phone": "+9639487222",
        "image": "https://dev.almoualemaqare.com/storage/users/user.png",
        "has_verified_phone": true
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/auth/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Phone Login

This endpoint lets you log in with specific user

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"phone\": \"incidunt\",
    \"password\": \"necessitatibus\",
    \"udid\": \"commodi\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "phone": "incidunt",
    "password": "necessitatibus",
    "udid": "commodi"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "token_type": "Bearer",
        "access_token": "4pqfHHTQHj006sO9nRByJvH565gwxzRgkdsMrFlG",
        "access_expires_at": null,
        "profile": {
            "id": 10744,
            "first_name": "Anita Jacobson",
            "last_name": "Mr. Abner Denesik II",
            "is_employee": 1,
            "phone": "+971555422373",
            "user_type": {
                "key": 1,
                "value": "USER"
            },
            "image": "https://dev.almoualemaqare.com/storage/users/user.png",
            "has_verified_phone": true,
            "permissions": [
                {
                    "id": 59910181,
                    "name": "INDEX_USER"
                }
            ]
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

POST api/v1/auth/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

phone   string   

Example: incidunt

password   string   

Example: necessitatibus

udid   string  optional  

Example: commodi

fcm_token   string  optional  

This field is required when udid is present.

Logout

requires authentication

This endpoint lets you log out

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/logout?token=blanditiis&udid=officiis" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/logout"
);

const params = {
    "token": "blanditiis",
    "udid": "officiis",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Successfully logged out",
    "status_code": 200
}
 

Request      

POST api/v1/auth/logout

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

token   string   

User's token. Example: blanditiis

udid   string  optional  

User's device udid. Example: officiis

Body Parameters

udid   string  optional  

Reset Password This endpoint lets you reset the account password

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/auth/reset-password" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"password\": \"JB\\\\)ts1=\",
    \"otp_code\": \"ipsum\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/auth/reset-password"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "password": "JB\\)ts1=",
    "otp_code": "ipsum"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Password has been changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/auth/reset-password

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

password   string   

Must be at least 6 characters. Example: JB\)ts1=

otp_code   string   

Example: ipsum

phone   string  optional  

appointment

APIs for appointments Management

Show all Appointments

requires authentication

This endpoint lets you show all appointments for user

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/appointments?page=13&per_page=8&filter%5Bid%5D=rerum&filter%5Bappointment_date%5D=placeat&sort=aut" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments"
);

const params = {
    "page": "13",
    "per_page": "8",
    "filter[id]": "rerum",
    "filter[appointment_date]": "placeat",
    "sort": "aut",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 25,
            "appointment_date": "2001-08-18 11:29:33",
            "property_type": {
                "key": 3,
                "value": "VILLA"
            },
            "property_address": "202 Domenic Curve\nPort Stephonstad, AR 51191",
            "user_name": "Addison Willms DVM Dr. Jean McDermott DDS"
        },
        {
            "id": 24,
            "appointment_date": "1977-02-18 17:02:54",
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "property_address": "4488 Walsh Plain\nJohnsland, MN 78335-7612",
            "user_name": "Mrs. Scarlett Corkery Angus Hill"
        },
        {
            "id": 23,
            "appointment_date": "2006-06-17 11:54:52",
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "property_address": "18885 Myrtle Falls Suite 006\nPort Maryjane, NH 28766-4195",
            "user_name": "Bernardo Bartell Travon Collier"
        },
        {
            "id": 22,
            "appointment_date": "1993-03-16 06:46:07",
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "property_address": "8165 Walsh Glens Apt. 976\nPort Elfrieda, MD 07880-1826",
            "user_name": "Helena Russel I Coby Eichmann"
        },
        {
            "id": 21,
            "appointment_date": "2004-04-23 13:02:59",
            "property_type": {
                "key": 6,
                "value": "FARM"
            },
            "property_address": "2929 Zella Estate Apt. 562\nWaelchiview, KY 94095-5985",
            "user_name": "Dr. Jacinthe Kautzer Gwendolyn Lemke"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/appointments

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 13

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 8

filter[id]   string  optional  

Field to filter items by id. Example: rerum

filter[appointment_date]   string  optional  

Field to filter items by appointment_date. Example: placeat

sort   string  optional  

Field to sort items by id,appointment_date. Example: aut

Store specific Appointment

requires authentication

This endpoint lets user store specific appointment

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"appointment_date\": \"2056-11-28\",
    \"advertisement_id\": \"maxime\",
    \"user_id\": \"sed\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "appointment_date": "2056-11-28",
    "advertisement_id": "maxime",
    "user_id": "sed"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 2,
        "appointment_date": "2024-12-12 10:30:00",
        "property_type": {
            "key": 8,
            "value": "LAND"
        },
        "property_address": "Main street",
        "user_name": "joe doe"
    },
    "message": "The Appointment added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/appointments

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

appointment_date   string   

Must be a valid date. Must be a date after now. Example: 2056-11-28

advertisement_id   string   

Example: maxime

user_id   string   

Example: sed

Show specific Appointment

requires authentication

This endpoint lets you show specific appointments

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/appointments/3" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments/3"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 4,
        "appointment_date": "2024-03-21 22:21:32",
        "property_type": {
            "key": 3,
            "value": "VILLA"
        },
        "property_address": "161 Stark Flat\nWest Guy, WY 59810-5686",
        "user_name": "Valentin Batz Nathaniel Ratke"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/appointments/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the appointment. Example: 3

Update specific Appointment

requires authentication

This endpoint lets user update specific appointment

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"appointment_date\": \"2071-09-05\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "appointment_date": "2071-09-05"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 7,
        "appointment_date": "2024-12-12 10:30",
        "property_type": {
            "key": 5,
            "value": "OFFICE"
        },
        "property_address": "5659 Windler Common\nGuillermomouth, PA 33582",
        "user_name": "joe doe"
    },
    "message": "The Appointment updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/appointments/{id}

PATCH api/v1/mobile/appointments/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the appointment. Example: 6

Body Parameters

appointment_date   string  optional  

Must be a valid date. Must be a date after now. Example: 2071-09-05

advertisement_id   string  optional  
user_id   string  optional  

Delete specific Appointment

requires authentication

This endpoint lets user delete specific appointment

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments/15" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/appointments/15"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Appointment deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/appointments/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the appointment. Example: 15

Initiates Appointment Request for an Advertisement

requires authentication

This endpoint allows a user to initiate a request for an appointment related to a specific advertisement.

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/appointments/13/request_appointment" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/appointments/13/request_appointment"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The request of Appointment has been sent successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/appointments/{advertisement_id}/request_appointment

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 13

agency

APIs for Agency Management

show specific Agency profile

requires authentication

This endpoint lets owner show own Agency profile

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 46,
        "name": "Erich Hessel",
        "owner_name": "Ms. Jeanette Bruen Dr. Isac Kuhlman IV",
        "owner_national_id": "Sunt nihil delectus animi.",
        "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
        "address": "Et quis iste consequatur tempore vel asperiores.",
        "license_number": "15",
        "phone": "+1.352.425.3286"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/agencies/{agency_id}/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Update specific Agency profile

requires authentication

This endpoint lets owner update own Agency profile

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=vpieouedzeirvqsr"\
    --form "owner_first_name=twloxcthjpqjwmxbi"\
    --form "owner_last_name=gwlpfgl"\
    --form "owner_national_id=rpwdmu"\
    --form "address=jqpefvptywdyyczic"\
    --form "license_number=totam"\
    --form "logo=@/tmp/phpKDFnnF" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/agencies/1/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'vpieouedzeirvqsr');
body.append('owner_first_name', 'twloxcthjpqjwmxbi');
body.append('owner_last_name', 'gwlpfgl');
body.append('owner_national_id', 'rpwdmu');
body.append('address', 'jqpefvptywdyyczic');
body.append('license_number', 'totam');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 49,
        "name": "new name",
        "owner_name": "Test Test",
        "owner_national_id": "03250012555",
        "logo": "https://dev.almoualemaqare.com/storage/agencies/66dd4523b4404.jpg",
        "address": "Damascus",
        "license_number": "10",
        "phone": "+971555422373"
    },
    "message": "Your Profile updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/agencies/{agency_id}/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: vpieouedzeirvqsr

owner_first_name   string  optional  

Must not be greater than 255 characters. Example: twloxcthjpqjwmxbi

owner_last_name   string  optional  

Must not be greater than 255 characters. Example: gwlpfgl

owner_national_id   string  optional  

Must not be greater than 255 characters. Example: rpwdmu

logo   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpKDFnnF

address   string  optional  

Must not be greater than 255 characters. Example: jqpefvptywdyyczic

license_number   string  optional  

Example: totam

phone   string  optional  

Show all agencies

requires authentication

This endpoint lets you show all agencies for user

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies?page=11&per_page=13&filter%5Bid%5D=occaecati&filter%5Bname%5D=adipisci&filter%5Baddress%5D=consequatur&filter%5Bsearch%5D=alias" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies"
);

const params = {
    "page": "11",
    "per_page": "13",
    "filter[id]": "occaecati",
    "filter[name]": "adipisci",
    "filter[address]": "consequatur",
    "filter[search]": "alias",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111346,
            "name": "Herbert Batz Sr.",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Explicabo unde odio veritatis omnis exercitationem fuga enim.",
            "geolocation": {
                "latitude": 42.374012,
                "longitude": 17.472821
            },
            "license_number": "53",
            "website": "Veniam sequi suscipit error aspernatur ipsa molestias et.",
            "phone": "(479) 594-6772",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "marisol44@pfannerstill.com",
            "star_rating": 3
        },
        {
            "id": 11111345,
            "name": "Reed Dicki PhD",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Perspiciatis aliquam ut quia mollitia aspernatur temporibus impedit excepturi.",
            "geolocation": {
                "latitude": -80.251472,
                "longitude": -175.505195
            },
            "license_number": "21",
            "website": "Neque nam nemo laudantium.",
            "phone": "1-831-469-3444",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "ernestine.mertz@hotmail.com",
            "star_rating": 2
        },
        {
            "id": 11111344,
            "name": "Janice Marquardt",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Quia dicta explicabo aliquid repudiandae.",
            "geolocation": {
                "latitude": 5.388553,
                "longitude": 119.100265
            },
            "license_number": "98",
            "website": "Necessitatibus et et omnis id.",
            "phone": "520.473.0714",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "paula.cruickshank@yahoo.com",
            "star_rating": 1
        },
        {
            "id": 11111343,
            "name": "Zoe Kunde MD",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Distinctio aliquid consequatur deleniti repudiandae molestiae ex.",
            "geolocation": {
                "latitude": 2.751968,
                "longitude": -150.719621
            },
            "license_number": "96",
            "website": "Reiciendis cum omnis dolorem.",
            "phone": "+1-848-785-7921",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "imelda.ohara@braun.org",
            "star_rating": 2
        },
        {
            "id": 11111342,
            "name": "Flavie Herzog",
            "type": {
                "key": 3,
                "value": "DEALER"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
            "address": "Voluptas suscipit aut modi.",
            "geolocation": {
                "latitude": 62.135322,
                "longitude": 157.113023
            },
            "license_number": "19",
            "website": "Non quaerat tenetur quae aut veritatis.",
            "phone": "805-673-1531",
            "status": {
                "key": 1,
                "value": "APPROVED"
            },
            "email": "dave.schamberger@hotmail.com",
            "star_rating": 5
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/agencies

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 11

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 13

filter[id]   string  optional  

Field to filter items by id. Example: occaecati

filter[name]   string  optional  

Field to filter items by name. Example: adipisci

filter[address]   string  optional  

Field to filter items by address. Example: consequatur

filter[search]   string  optional  

Field to perform a custom search. Example: alias

Add Agency

requires authentication

This endpoint lets user add Agency

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=chmvgdvks"\
    --form "owner_first_name=eakwaqoysgmlkylwnzjray"\
    --form "owner_last_name=aoppykduonyoldpkywe"\
    --form "owner_national_id=mckew"\
    --form "type=1"\
    --form "address=pcswganxbzmfnloqlncf"\
    --form "geolocation[latitude]=4.9"\
    --form "geolocation[longitude]=59"\
    --form "license_number=vel"\
    --form "website=gfetsmunzamgk"\
    --form "email=smitham.dahlia@example.com"\
    --form "logo=@/tmp/phpDKAoeC" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'chmvgdvks');
body.append('owner_first_name', 'eakwaqoysgmlkylwnzjray');
body.append('owner_last_name', 'aoppykduonyoldpkywe');
body.append('owner_national_id', 'mckew');
body.append('type', '1');
body.append('address', 'pcswganxbzmfnloqlncf');
body.append('geolocation[latitude]', '4.9');
body.append('geolocation[longitude]', '59');
body.append('license_number', 'vel');
body.append('website', 'gfetsmunzamgk');
body.append('email', 'smitham.dahlia@example.com');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11111410,
        "name": "Agency Name",
        "type": {
            "key": 1,
            "value": "COMPANY"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/66dd452f984f0.jpg",
        "address": "123 Main Street",
        "geolocation": {
            "latitude": 55,
            "longitude": 55
        },
        "license_number": "123",
        "website": "Agency Webmobile",
        "phone": "+971555422373",
        "status": {
            "key": 3,
            "value": "UNDER_REVIEW"
        },
        "email": "agency@agency.com",
        "star_rating": 0
    },
    "message": "The Agency added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/agencies

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: chmvgdvks

owner_first_name   string   

Must not be greater than 255 characters. Example: eakwaqoysgmlkylwnzjray

owner_last_name   string   

Must not be greater than 255 characters. Example: aoppykduonyoldpkywe

owner_national_id   string   

Must not be greater than 255 characters. Example: mckew

type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
logo   file   

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpDKAoeC

address   string   

Must not be greater than 255 characters. Example: pcswganxbzmfnloqlncf

geolocation   object  optional  
latitude   number  optional  

Example: 4.9

longitude   number  optional  

Example: 59

license_number   string  optional  

Example: vel

website   string   

Must not be greater than 255 characters. Example: gfetsmunzamgk

phone   string  optional  
email   string   

Must be a valid email address. Must not be greater than 255 characters. Example: smitham.dahlia@example.com

Show specific Agency

requires authentication

This endpoint lets you show specific Agency

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 12,
        "name": "Kari Douglas",
        "name_ar": "Cloyd Zulauf",
        "owner_first_name": "Tillman Breitenberg",
        "owner_last_name": "Domingo Bechtelar I",
        "owner_national_id": "Dolorem eos aut harum autem hic.",
        "type": {
            "key": 2,
            "value": "OFFICE"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
        "address": "Et voluptatem ratione consequatur a ut.",
        "address_ar": "Libero beatae quis veniam in suscipit.",
        "geolocation": {
            "latitude": -84.712623,
            "longitude": -95.768488
        },
        "license_number": "46",
        "website": "Fugit repellendus culpa debitis aliquid deleniti laborum.",
        "phone": "(802) 433-1526",
        "status": {
            "key": 3,
            "value": "UNDER_REVIEW"
        },
        "email": "perdman@hotmail.com",
        "star_rating": 1
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/agencies/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the agency. Example: 1

Update specific Agency

requires authentication

This endpoint lets user update own Agency

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=bkssbuevctzakfcl"\
    --form "owner_first_name=mmjsjcayrxhpphxr"\
    --form "owner_last_name=wxjhhqegohartxnmbqtzol"\
    --form "owner_national_id=rgklgwoyh"\
    --form "type=1"\
    --form "address=jcezlhoehvlleflr"\
    --form "geolocation[latitude]=3.6751"\
    --form "geolocation[longitude]=1053172.169"\
    --form "license_number=inventore"\
    --form "website=zejrufccxfhhxya"\
    --form "email=sophie91@example.com"\
    --form "logo=@/tmp/phpdMNfaH" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'bkssbuevctzakfcl');
body.append('owner_first_name', 'mmjsjcayrxhpphxr');
body.append('owner_last_name', 'wxjhhqegohartxnmbqtzol');
body.append('owner_national_id', 'rgklgwoyh');
body.append('type', '1');
body.append('address', 'jcezlhoehvlleflr');
body.append('geolocation[latitude]', '3.6751');
body.append('geolocation[longitude]', '1053172.169');
body.append('license_number', 'inventore');
body.append('website', 'zejrufccxfhhxya');
body.append('email', 'sophie91@example.com');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 11111412,
        "name": "Agency Name1",
        "type": {
            "key": 2,
            "value": "OFFICE"
        },
        "logo": "https://dev.almoualemaqare.com/storage/agencies/66dd4530233ee.jpg",
        "address": "122 Main Street",
        "geolocation": {
            "latitude": 55,
            "longitude": 55
        },
        "license_number": "123",
        "website": "Agency Webmobile",
        "phone": "+971555422373",
        "status": {
            "key": 3,
            "value": "UNDER_REVIEW"
        },
        "email": "agency1@agency.com",
        "star_rating": 4
    },
    "message": "The Agency updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/agencies/{id}

PATCH api/v1/mobile/user/agencies/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the agency. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: bkssbuevctzakfcl

owner_first_name   string  optional  

Must not be greater than 255 characters. Example: mmjsjcayrxhpphxr

owner_last_name   string  optional  

Must not be greater than 255 characters. Example: wxjhhqegohartxnmbqtzol

owner_national_id   string  optional  

Must not be greater than 255 characters. Example: rgklgwoyh

type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
logo   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpdMNfaH

address   string  optional  

Must not be greater than 255 characters. Example: jcezlhoehvlleflr

geolocation   object  optional  
latitude   number  optional  

Example: 3.6751

longitude   number  optional  

Example: 1053172.169

license_number   string  optional  

Example: inventore

website   string  optional  

Must not be greater than 255 characters. Example: zejrufccxfhhxya

phone   string  optional  
email   string  optional  

Must be a valid email address. Must not be greater than 255 characters. Example: sophie91@example.com

Advertisements

APIs for Advertisement Management

Show home advertisements

requires authentication

Get home information about advertisements

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/home?filter%5Bproperty_type%5D=delectus&filter%5Blisting_type%5D=sed&filter%5Bsearch%5D=neque" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/home"
);

const params = {
    "filter[property_type]": "delectus",
    "filter[listing_type]": "sed",
    "filter[search]": "neque",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "home_ads": [
            {
                "id": 11111181,
                "name": "Aut quis aperiam et molestiae architecto cum.",
                "slug": "aut-quis-aperiam-et-molestiae-architecto-cum",
                "property": {
                    "id": 10047,
                    "price": "41844.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 1,
                        "value": "APARTMENT"
                    },
                    "ownership_type": {
                        "key": 1,
                        "value": "COURT_JUDGMENT"
                    },
                    "area_sqm": 1465,
                    "unit": "Meter",
                    "address": "7003 Dandre Lodge Suite 633\nWest Theodora, PA 27413"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "FOR_RENT",
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/OAcvVhCS2NcqRUKgw55xHfrR6ZWJk1SBiMlXP76k.jpg",
                "clicks": 48,
                "is_favorite": false
            }
        ],
        "best_ads": [
            {
                "id": 11111181,
                "name": "Aut quis aperiam et molestiae architecto cum.",
                "slug": "aut-quis-aperiam-et-molestiae-architecto-cum",
                "property": {
                    "id": 10047,
                    "price": "41844.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 1,
                        "value": "APARTMENT"
                    },
                    "ownership_type": {
                        "key": 1,
                        "value": "COURT_JUDGMENT"
                    },
                    "area_sqm": 1465,
                    "unit": "Meter",
                    "address": "7003 Dandre Lodge Suite 633\nWest Theodora, PA 27413"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "FOR_RENT",
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/OAcvVhCS2NcqRUKgw55xHfrR6ZWJk1SBiMlXP76k.jpg",
                "clicks": 48,
                "is_favorite": false
            }
        ]
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/home

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

filter[property_type]   string  optional  

Field to filter advertisement by property_type. Example: delectus

filter[listing_type]   string  optional  

Field to filter advertisement by listing_type. Example: sed

filter[search]   string  optional  

Field to perform a custom search. Example: neque

Show specific advertisement

requires authentication

Get detailed information about a specific advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/advertisement/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/advertisement/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "advertisement": {
            "id": 10,
            "name": "Enim aperiam facilis consequatur minima.",
            "description": "Ipsa libero laborum voluptates. Corrupti qui rerum aut nesciunt ut repellendus incidunt esse. Dolorum doloribus tempore tenetur sapiente aliquid.",
            "property": {
                "id": 21,
                "title": null,
                "price": "947693.00",
                "currency": "SYP",
                "negotiable": 1,
                "property_type": {
                    "key": 8,
                    "value": "LAND"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "furnishing": {
                    "key": 3,
                    "value": "FURNISHED"
                },
                "cladding_status": {
                    "key": 2,
                    "value": "GOOD"
                },
                "bedrooms": 3,
                "bathrooms": 1,
                "area_sqm": 3677,
                "floor_number": 2,
                "address": "173 Daphnee Divide Suite 787\nDonnieton, MT 17032-2696",
                "direction": {
                    "key": 8,
                    "value": "SOUTH_WEST"
                },
                "view": "17396 Georgianna Meadow\nLake Tyriqueborough, IL 14215-3304",
                "geolocation": {
                    "latitude": -55.1423,
                    "longitude": -129.039295
                },
                "building_name_number": "564401",
                "street_name_number": "863003",
                "location": {
                    "id": 157,
                    "name": "Fannie Jacobi"
                },
                "user": {
                    "id": 11111496,
                    "name": "Mrs. Alisa Lang Jr. Brisa Bergstrom"
                },
                "status": {
                    "key": 1,
                    "value": "DRAFT"
                },
                "services": []
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/QXLnV2Y1OJlt6u2l5DfgqeeL0IT4Ee3aPiF2pb4M.jpg"
                }
            ],
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 1,
                "value": "Real Estate Office"
            },
            "agency": {
                "agency_info": {
                    "id": 51,
                    "name": "Roberta Wilkinson Sr.",
                    "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
                    "address": "Et dolores et reprehenderit ipsam.",
                    "reviews": 5
                }
            },
            "clicks": 29,
            "advertisement_date": "08 Sep 2024",
            "contact_phone": null
        },
        "similar_ads": [
            {
                "id": 10,
                "name": "Enim aperiam facilis consequatur minima.",
                "slug": "enim-aperiam-facilis-consequatur-minima",
                "property": {
                    "id": 21,
                    "price": "947693.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 8,
                        "value": "LAND"
                    },
                    "ownership_type": {
                        "key": 7,
                        "value": "NOTARY_PUBLIC_AGENCY"
                    },
                    "area_sqm": 3677,
                    "unit": "Meter",
                    "address": "173 Daphnee Divide Suite 787\nDonnieton, MT 17032-2696"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 1,
                    "value": "Real Estate Office"
                },
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/QXLnV2Y1OJlt6u2l5DfgqeeL0IT4Ee3aPiF2pb4M.jpg",
                "clicks": 28,
                "is_favorite": false
            }
        ]
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/advertisement/{advertisement_slug}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_slug   integer   

The slug of the advertisement. Example: 1

Show all advertisement

requires authentication

This endpoint lets user show all advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements?page=15&per_page=15&filter%5Bid%5D=distinctio&filter%5Bname%5D=sed&filter%5Buser_id%5D=earum&filter%5Bproperty_id%5D=neque&filter%5Blisting_type%5D=voluptatem&filter%5Bsale_type%5D=quisquam&filter%5Bstatus%5D=possimus&filter%5Brent_term%5D=eum&filter%5Bsearch%5D=ut&sort=amet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements"
);

const params = {
    "page": "15",
    "per_page": "15",
    "filter[id]": "distinctio",
    "filter[name]": "sed",
    "filter[user_id]": "earum",
    "filter[property_id]": "neque",
    "filter[listing_type]": "voluptatem",
    "filter[sale_type]": "quisquam",
    "filter[status]": "possimus",
    "filter[rent_term]": "eum",
    "filter[search]": "ut",
    "sort": "amet",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111216,
            "name": "Dolorum possimus doloremque quis perspiciatis aliquam enim.",
            "slug": "dolorum-possimus-doloremque-quis-perspiciatis-aliquam-enim",
            "description": "Dolor eaque quia quae et illo velit. Velit a fugit maiores deserunt nam. Aut qui ut ullam ea.",
            "user": {
                "id": 10857,
                "name": "Guy Marvin Alphonso Terry"
            },
            "property": {
                "id": 10087,
                "price": "252240.00",
                "currency": "SYP",
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "ownership_type": {
                    "key": 5,
                    "value": "SHARES_TITLE_DEAD"
                },
                "area_sqm": 4521,
                "unit": "Meter",
                "address": "4107 Raul Parks\nElainaton, ND 91053"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/X15ku2BDcNbyGxGujmhrdRrCQ5C2y4CfgiDYhEDt.jpg"
                }
            ],
            "advertisement_status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 3,
                "value": "MONTHLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 88,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 11111215,
            "name": "Consequatur culpa voluptas consequatur itaque itaque sed soluta qui.",
            "slug": "consequatur-culpa-voluptas-consequatur-itaque-itaque-sed-soluta-qui",
            "description": "Nam tenetur iusto omnis quis animi reprehenderit quasi ipsam. Cum cupiditate itaque neque dolores omnis eius quaerat. Dolor nobis odio ut natus non.",
            "user": {
                "id": 10857,
                "name": "Guy Marvin Alphonso Terry"
            },
            "property": {
                "id": 10086,
                "price": "75178.00",
                "currency": "SYP",
                "property_type": {
                    "key": 2,
                    "value": "SHOP"
                },
                "ownership_type": {
                    "key": 3,
                    "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                },
                "area_sqm": 1801,
                "unit": "Meter",
                "address": "13167 Marlee Burgs\nLamontchester, RI 17895"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/AFsZKeLvqBdu2or6dwGdkkV4yjZZ6ZJrDhWIZPaK.jpg"
                }
            ],
            "advertisement_status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 16,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 11111214,
            "name": "Fuga non et in incidunt ipsum.",
            "slug": "fuga-non-et-in-incidunt-ipsum",
            "description": "Est quasi ducimus et rerum eum. Doloribus pariatur non consequatur explicabo blanditiis. Eum perspiciatis ut molestiae est possimus a harum.",
            "user": {
                "id": 10857,
                "name": "Guy Marvin Alphonso Terry"
            },
            "property": {
                "id": 10085,
                "price": "247508.00",
                "currency": "SYP",
                "property_type": {
                    "key": 7,
                    "value": "CHALET"
                },
                "ownership_type": {
                    "key": 5,
                    "value": "SHARES_TITLE_DEAD"
                },
                "area_sqm": 854,
                "unit": "Meter",
                "address": "8415 Carter Village Apt. 746\nBrennanland, FL 74242-5987"
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/UJZIBmq8Cvp0I1tkTTXPzHAIFKDyMnxD69zeuZjq.jpg"
                }
            ],
            "advertisement_status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 50,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 11111213,
            "name": "Accusantium aut alias dicta expedita odio enim nesciunt.",
            "slug": "accusantium-aut-alias-dicta-expedita-odio-enim-nesciunt",
            "description": "Distinctio pariatur libero animi non. Soluta id veniam quod maiores. Eius molestiae necessitatibus nihil nemo. Officia quia qui et voluptatem unde aut id dolore.",
            "user": {
                "id": 10857,
                "name": "Guy Marvin Alphonso Terry"
            },
            "property": {
                "id": 10084,
                "price": "998876.00",
                "currency": "SYP",
                "property_type": {
                    "key": 7,
                    "value": "CHALET"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 1087,
                "unit": "Meter",
                "address": "9796 Wehner Groves\nPort Dereck, IN 65293"
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 1,
                "value": "PRIVATE"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/9UU1ezW37Zh4qkKvkzFa6V3o64OaQkkhizNtkaMt.jpg"
                }
            ],
            "advertisement_status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 83,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 11111212,
            "name": "Sunt sit quo aperiam animi.",
            "slug": "sunt-sit-quo-aperiam-animi",
            "description": "Distinctio quis non sed et rerum sapiente id dolores. Reiciendis a nulla dolorem quia. Sit maiores quis est deserunt sed. Officia molestiae consequuntur rerum facilis delectus.",
            "user": {
                "id": 10857,
                "name": "Guy Marvin Alphonso Terry"
            },
            "property": {
                "id": 10083,
                "price": "666836.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 1,
                    "value": "COURT_JUDGMENT"
                },
                "area_sqm": 3024,
                "unit": "Meter",
                "address": "5704 Hahn Road Suite 748\nRogahnland, MS 13086-3531"
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 1,
                "value": "PRIVATE"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/diFDjFHylKfnZoGn2h7blhmAnTOIZSwSgvEA3J0h.jpg"
                }
            ],
            "advertisement_status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 1,
                "value": "DAILY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 75,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/advertisements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 15

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 15

filter[id]   string  optional  

Field to filter items by id. Example: distinctio

filter[name]   string  optional  

Field to filter items by name. Example: sed

filter[user_id]   string  optional  

Field to filter items by user_id. Example: earum

filter[property_id]   string  optional  

Field to filter items by property_id. Example: neque

filter[listing_type]   string  optional  

Field to filter items by listing_type. Example: voluptatem

filter[sale_type]   string  optional  

Field to filter items by sale_type. Example: quisquam

filter[status]   string  optional  

Field to filter items by status. Example: possimus

filter[rent_term]   string  optional  

Field to filter items by rent_term. Example: eum

filter[search]   string  optional  

Field to perform a custom search. Example: ut

sort   string  optional  

Field to sort items by id,name,property_id. Example: amet

Add Advertisement

requires authentication

This endpoint lets user add advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=dneuqgfpxiiscgcsuuntozr"\
    --form "description=Cupiditate sapiente esse consequatur cupiditate expedita porro est."\
    --form "listing_type=1"\
    --form "sale_type=1"\
    --form "privacy=2"\
    --form "rent_term=4"\
    --form "contact_phone=officia"\
    --form "price=1"\
    --form "negotiable=1"\
    --form "property_type=10"\
    --form "ownership_type=1"\
    --form "furnishing=3"\
    --form "direction=10"\
    --form "cladding_status=1"\
    --form "status=4"\
    --form "bedrooms=25"\
    --form "bathrooms=29"\
    --form "area_sqm=1"\
    --form "floor_number=8"\
    --form "view=yhgzsi"\
    --form "address=rorqjmnnxadfsxywrzya"\
    --form "geolocation[latitude]=19264"\
    --form "geolocation[longitude]=123.849"\
    --form "building_name_number=occaecati"\
    --form "street_name_number=perspiciatis"\
    --form "location_id=animi"\
    --form "user_id=necessitatibus"\
    --form "images[]=@/tmp/phpBJlDJO" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'dneuqgfpxiiscgcsuuntozr');
body.append('description', 'Cupiditate sapiente esse consequatur cupiditate expedita porro est.');
body.append('listing_type', '1');
body.append('sale_type', '1');
body.append('privacy', '2');
body.append('rent_term', '4');
body.append('contact_phone', 'officia');
body.append('price', '1');
body.append('negotiable', '1');
body.append('property_type', '10');
body.append('ownership_type', '1');
body.append('furnishing', '3');
body.append('direction', '10');
body.append('cladding_status', '1');
body.append('status', '4');
body.append('bedrooms', '25');
body.append('bathrooms', '29');
body.append('area_sqm', '1');
body.append('floor_number', '8');
body.append('view', 'yhgzsi');
body.append('address', 'rorqjmnnxadfsxywrzya');
body.append('geolocation[latitude]', '19264');
body.append('geolocation[longitude]', '123.849');
body.append('building_name_number', 'occaecati');
body.append('street_name_number', 'perspiciatis');
body.append('location_id', 'animi');
body.append('user_id', 'necessitatibus');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 25,
        "name": "Advertisement Sale for home",
        "slug": "advertisement-sale-for-home",
        "description": "Advertisement Description",
        "user": {
            "id": 725,
            "name": "Milford Douglas Granville Gleichner"
        },
        "property": {
            "id": 11111179,
            "price": "100000.00",
            "currency": "SYP",
            "property_type": {
                "key": 1,
                "value": "APARTMENT"
            },
            "ownership_type": {
                "key": 2,
                "value": "GREEN_TITLE_DEAD"
            },
            "area_sqm": 2000,
            "unit": "Meter",
            "address": "123 Main Street"
        },
        "listing_type": {
            "key": 2,
            "value": "FOR_RENT"
        },
        "sale_type": null,
        "privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "images": [
            {
                "image_url": "https://dev.almoualemaqare.com/storage/advertisements/66dd452a6d72f.jpg"
            }
        ],
        "advertisement_status": {
            "key": 1,
            "value": "PENDING"
        },
        "rent_term": {
            "key": 1,
            "value": "DAILY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 0,
        "is_favorite": false,
        "tag": null,
        "advertisement_number": "TIThF5HtVtZxakT",
        "contact_phone": "+963956478665"
    },
    "message": "The Advertisement added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/advertisements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

name   string   

Must not be greater than 255 characters. Example: dneuqgfpxiiscgcsuuntozr

description   string  optional  

Example: Cupiditate sapiente esse consequatur cupiditate expedita porro est.

listing_type   integer   

Example: 1

Must be one of:
  • 1
  • 2
sale_type   integer  optional  

This field is required when listing_type is != or 1. Example: 1

Must be one of:
  • 1
  • 2
privacy   integer   

Example: 2

Must be one of:
  • 1
  • 2
images   file[]  optional  

Must be an image. Must not be greater than 2048 kilobytes.

rent_term   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
contact_phone   string   

Example: officia

price   number   

Must be at least 0. Example: 1

negotiable   boolean   

Example: true

property_type   integer  optional  

Example: 10

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
ownership_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
furnishing   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
direction   integer  optional  

Example: 10

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
cladding_status   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
status   integer  optional  

Example: 4

Must be one of:
  • 1
  • 2
  • 3
  • 4
bedrooms   number   

Must be at least 0. Example: 25

bathrooms   number   

Must be at least 0. Example: 29

area_sqm   number   

Must be at least 0. Example: 1

floor_number   number  optional  

Must be at least 0. Example: 8

view   string   

Must not be greater than 255 characters. Example: yhgzsi

address   string   

Must not be greater than 255 characters. Example: rorqjmnnxadfsxywrzya

geolocation   object  optional  
latitude   number  optional  

Example: 19264

longitude   number  optional  

Example: 123.849

building_name_number   string  optional  

Example: occaecati

street_name_number   string  optional  

Example: perspiciatis

location_id   string   

Example: animi

user_id   string   

Example: necessitatibus

Show specific advertisement

requires authentication

This endpoint lets specific advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 24,
        "name": "Et omnis velit inventore doloribus earum quia quis.",
        "slug": "et-omnis-velit-inventore-doloribus-earum-quia-quis",
        "description": "Quia officia exercitationem aliquid. Rerum nostrum iure optio qui eligendi autem est est. In vitae dolores repellendus accusamus omnis voluptas. Nemo sed et consequuntur vitae soluta aspernatur. Architecto harum quis id amet.",
        "user": {
            "id": 718,
            "name": "Virginie Harvey Nels Osinski PhD"
        },
        "property": {
            "id": 11111177,
            "price": "393155.00",
            "currency": "SYP",
            "property_type": {
                "key": 9,
                "value": "HOTEL"
            },
            "ownership_type": {
                "key": 4,
                "value": "HOUSING_TITLE_DEAD"
            },
            "area_sqm": 3602,
            "unit": "Meter",
            "address": "814 Cortney Lock\nNew Othaborough, UT 74877-8810"
        },
        "listing_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "sale_type": {
            "key": 2,
            "value": "INSTALLMENT"
        },
        "privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "images": [
            {
                "image_url": "https://dev.almoualemaqare.com/storage/advertisements/rsxdHlL7FH0HMagfBzWJBSjzOYHpTypT7ZO8XmgU.jpg"
            }
        ],
        "advertisement_status": {
            "key": 1,
            "value": "PENDING"
        },
        "rent_term": {
            "key": 1,
            "value": "DAILY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 12,
        "is_favorite": false,
        "tag": null,
        "advertisement_number": "123456789"
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/advertisements/{advertisement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Update specific advertisement

requires authentication

This endpoint lets user update specific advertisement

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "name=wnmhhpiwunu"\
    --form "description=Animi sed aperiam facere."\
    --form "listing_type=2"\
    --form "sale_type=1"\
    --form "privacy=2"\
    --form "rent_term=1"\
    --form "contact_phone=eum"\
    --form "price=20"\
    --form "negotiable=1"\
    --form "property_type=3"\
    --form "ownership_type=6"\
    --form "furnishing=2"\
    --form "direction=1"\
    --form "cladding_status=5"\
    --form "status=2"\
    --form "bedrooms=21"\
    --form "bathrooms=1"\
    --form "area_sqm=4"\
    --form "floor_number=70"\
    --form "view=cgcuvs"\
    --form "address=krfujqqpyvmmdbh"\
    --form "geolocation[latitude]=0"\
    --form "geolocation[longitude]=14586.5"\
    --form "building_name_number=eveniet"\
    --form "street_name_number=eveniet"\
    --form "images[]=@/tmp/phpPAkOeL" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('name', 'wnmhhpiwunu');
body.append('description', 'Animi sed aperiam facere.');
body.append('listing_type', '2');
body.append('sale_type', '1');
body.append('privacy', '2');
body.append('rent_term', '1');
body.append('contact_phone', 'eum');
body.append('price', '20');
body.append('negotiable', '1');
body.append('property_type', '3');
body.append('ownership_type', '6');
body.append('furnishing', '2');
body.append('direction', '1');
body.append('cladding_status', '5');
body.append('status', '2');
body.append('bedrooms', '21');
body.append('bathrooms', '1');
body.append('area_sqm', '4');
body.append('floor_number', '70');
body.append('view', 'cgcuvs');
body.append('address', 'krfujqqpyvmmdbh');
body.append('geolocation[latitude]', '0');
body.append('geolocation[longitude]', '14586.5');
body.append('building_name_number', 'eveniet');
body.append('street_name_number', 'eveniet');
body.append('images[]', document.querySelector('input[name="images[]"]').files[0]);

fetch(url, {
    method: "PUT",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 28,
        "name": "Advertisement Sale for home",
        "slug": "advertisement-sale-for-home",
        "description": "Advertisement Description",
        "user": {
            "id": 733,
            "name": "Prof. Zane Ledner Edgar Hudson"
        },
        "property": {
            "id": 11111182,
            "price": 100000,
            "currency": "SYP",
            "property_type": {
                "key": 1,
                "value": "APARTMENT"
            },
            "ownership_type": {
                "key": 2,
                "value": "GREEN_TITLE_DEAD"
            },
            "area_sqm": 2000,
            "unit": "Meter",
            "address": "123 Main Street"
        },
        "listing_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "sale_type": {
            "key": 1,
            "value": "CASH"
        },
        "privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "images": [
            {
                "image_url": "https://dev.almoualemaqare.com/storage/advertisements/pIbXoHDCfT0zdjKQrwISNwsUiFlwgKaRVcFTVVFK.jpg"
            }
        ],
        "advertisement_status": {
            "key": 1,
            "value": "PENDING"
        },
        "rent_term": {
            "key": 1,
            "value": "DAILY"
        },
        "exhibitor_type": {
            "key": 2,
            "value": "PROPERTY_OWNER"
        },
        "clicks": 60,
        "is_favorite": false,
        "tag": null,
        "advertisement_number": "nj7mnwcXxlwhb4S"
    },
    "message": "The Advertisement updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/advertisements/{advertisement_id}

PATCH api/v1/mobile/user/advertisements/{advertisement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Body Parameters

name   string  optional  

Must not be greater than 255 characters. Example: wnmhhpiwunu

description   string  optional  

Example: Animi sed aperiam facere.

listing_type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
sale_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
privacy   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
images   file[]  optional  

Must be an image. Must not be greater than 2048 kilobytes.

rent_term   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
contact_phone   string  optional  

Example: eum

price   number  optional  

Must be at least 0. Example: 20

negotiable   boolean  optional  

Example: true

property_type   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
ownership_type   integer  optional  

Example: 6

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
furnishing   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
direction   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
cladding_status   integer  optional  

Example: 5

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
status   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
bedrooms   number  optional  

Must be at least 0. Example: 21

bathrooms   number  optional  

Must be at least 0. Example: 1

area_sqm   number  optional  

Must be at least 0. Example: 4

floor_number   number  optional  

Must be at least 0. Example: 70

view   string  optional  

Must not be greater than 255 characters. Example: cgcuvs

address   string  optional  

Must not be greater than 255 characters. Example: krfujqqpyvmmdbh

geolocation   object  optional  
latitude   number  optional  

Example: 0

longitude   number  optional  

Example: 14586.5

building_name_number   string  optional  

Example: eveniet

street_name_number   string  optional  

Example: eveniet

location_id   string  optional  
user_id   string  optional  

Delete specific Advertisement

requires authentication

This endpoint lets user delete specific advertisement

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"quos\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reason": "quos"
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "The Advertisement deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/advertisements/{advertisement_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Body Parameters

reason   string  optional  

Example: quos

Show all public advertisement for all users

requires authentication

This endpoint lets user show all advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/get-advertisements?page=7&per_page=9&filter%5Bid%5D=delectus&filter%5Bname%5D=ut&filter%5Buser_id%5D=sit&filter%5Bproperty_id%5D=ducimus&filter%5Blisting_type%5D=assumenda&filter%5Bsale_type%5D=recusandae&filter%5Bstatus%5D=tenetur&filter%5Brent_term%5D=recusandae&filter%5Bsearch%5D=dolor&sort=totam" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/get-advertisements"
);

const params = {
    "page": "7",
    "per_page": "9",
    "filter[id]": "delectus",
    "filter[name]": "ut",
    "filter[user_id]": "sit",
    "filter[property_id]": "ducimus",
    "filter[listing_type]": "assumenda",
    "filter[sale_type]": "recusandae",
    "filter[status]": "tenetur",
    "filter[rent_term]": "recusandae",
    "filter[search]": "dolor",
    "sort": "totam",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 34,
            "name": "Non aperiam necessitatibus voluptas doloremque.",
            "slug": "non-aperiam-necessitatibus-voluptas-doloremque",
            "description": "In doloremque quod corporis atque aperiam. Laboriosam quia itaque sit doloremque voluptatem.",
            "user": {
                "id": 11111620,
                "name": "Prof. Nicola Marquardt Jr. Ernest Nolan"
            },
            "property": {
                "id": 46,
                "price": "922741.00",
                "currency": "SYP",
                "property_type": {
                    "key": 9,
                    "value": "HOTEL"
                },
                "ownership_type": {
                    "key": 1,
                    "value": "COURT_JUDGMENT"
                },
                "area_sqm": 3597,
                "unit": "Meter",
                "address": "1964 Lebsack Ridges\nEast Cathrynville, ME 93662-5018"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/D4RpYxVlzqIPSf8zkH4yY13tyMmIS7PbybByTdSk.jpg"
                }
            ],
            "advertisement_status": {
                "key": 2,
                "value": "APPROVED"
            },
            "rent_term": {
                "key": 1,
                "value": "DAILY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 78,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 33,
            "name": "Porro minima ut facere debitis enim.",
            "slug": "porro-minima-ut-facere-debitis-enim",
            "description": "Quis et est doloribus aspernatur molestiae fugit sint. Et magnam at veniam necessitatibus mollitia earum. Autem itaque explicabo dolorem eligendi eaque impedit.",
            "user": {
                "id": 11111617,
                "name": "Alice Weimann IV Vida Schuster"
            },
            "property": {
                "id": 45,
                "price": "421671.00",
                "currency": "SYP",
                "property_type": {
                    "key": 10,
                    "value": "OTHER"
                },
                "ownership_type": {
                    "key": 5,
                    "value": "SHARES_TITLE_DEAD"
                },
                "area_sqm": 4092,
                "unit": "Meter",
                "address": "923 Pfannerstill Mission\nNorth Anthony, MS 90442"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/pqdLL5LT7lPRN4kXE8Hp5XFQkq2zHvP7O6ue8Azq.jpg"
                }
            ],
            "advertisement_status": {
                "key": 2,
                "value": "APPROVED"
            },
            "rent_term": {
                "key": 2,
                "value": "WEEKLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 71,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 32,
            "name": "Velit possimus est tempora repellendus non occaecati maiores id.",
            "slug": "velit-possimus-est-tempora-repellendus-non-occaecati-maiores-id",
            "description": "Amet et excepturi debitis. Hic aut ea ducimus vel nam dolorem est et. Et molestiae architecto ad molestiae nobis error omnis. Enim aut sed eveniet ullam dolorum quas.",
            "user": {
                "id": 11111614,
                "name": "Allen Rodriguez Miss Chyna Murphy III"
            },
            "property": {
                "id": 44,
                "price": "67211.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 6,
                    "value": "OUTRIGHT_SALE_CONTRACT"
                },
                "area_sqm": 2983,
                "unit": "Meter",
                "address": "675 Maud Islands\nGoodwinmouth, KS 79462-9735"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/4sCMhxnT5NF8IkE89KH7pwf57idiBFd4suXXAgnF.jpg"
                }
            ],
            "advertisement_status": {
                "key": 2,
                "value": "APPROVED"
            },
            "rent_term": {
                "key": 2,
                "value": "WEEKLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 15,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 31,
            "name": "Animi quis voluptas ipsa omnis dignissimos est officiis.",
            "slug": "animi-quis-voluptas-ipsa-omnis-dignissimos-est-officiis",
            "description": "Excepturi quo doloremque expedita laborum consequatur. Quaerat delectus incidunt quidem vel iure earum. Ducimus laudantium voluptatem inventore suscipit dignissimos voluptas officiis. Nisi nihil et laudantium quia.",
            "user": {
                "id": 11111611,
                "name": "Dr. Marion Bernier II Kiera Hoppe"
            },
            "property": {
                "id": 43,
                "price": "107328.00",
                "currency": "SYP",
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "ownership_type": {
                    "key": 2,
                    "value": "GREEN_TITLE_DEAD"
                },
                "area_sqm": 4695,
                "unit": "Meter",
                "address": "988 Hansen Mountain Apt. 223\nLake Helmerville, VA 73653"
            },
            "listing_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/MOQiudL58HCJiIT6Uet5TOgMf8K5oZIdL8W0MWCy.jpg"
                }
            ],
            "advertisement_status": {
                "key": 2,
                "value": "APPROVED"
            },
            "rent_term": {
                "key": 2,
                "value": "WEEKLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 88,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        },
        {
            "id": 30,
            "name": "Placeat quod magnam et quam quidem molestiae.",
            "slug": "placeat-quod-magnam-et-quam-quidem-molestiae",
            "description": "Dolorem fuga maxime velit non et. Rerum velit quidem et animi aspernatur. Ipsam sunt sequi rem explicabo voluptas quas.",
            "user": {
                "id": 11111608,
                "name": "Neoma Rowe Keven Littel"
            },
            "property": {
                "id": 42,
                "price": "278975.00",
                "currency": "SYP",
                "property_type": {
                    "key": 8,
                    "value": "LAND"
                },
                "ownership_type": {
                    "key": 3,
                    "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                },
                "area_sqm": 1317,
                "unit": "Meter",
                "address": "452 Gerlach Garden Apt. 542\nJoyview, IL 38768"
            },
            "listing_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "sale_type": {
                "key": 1,
                "value": "CASH"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/orpJEl4XtgrTCXavT5rVifIV6ncJ9CDOhVyMcCOC.jpg"
                }
            ],
            "advertisement_status": {
                "key": 2,
                "value": "APPROVED"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "PROPERTY_OWNER"
            },
            "clicks": 11,
            "is_favorite": false,
            "tag": null,
            "advertisement_number": "123456789"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/get-advertisements

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 7

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 9

filter[id]   string  optional  

Field to filter items by id. Example: delectus

filter[name]   string  optional  

Field to filter items by name. Example: ut

filter[user_id]   string  optional  

Field to filter items by user_id. Example: sit

filter[property_id]   string  optional  

Field to filter items by property_id. Example: ducimus

filter[listing_type]   string  optional  

Field to filter items by listing_type. Example: assumenda

filter[sale_type]   string  optional  

Field to filter items by sale_type. Example: recusandae

filter[status]   string  optional  

Field to filter items by status. Example: tenetur

filter[rent_term]   string  optional  

Field to filter items by rent_term. Example: recusandae

filter[search]   string  optional  

Field to perform a custom search. Example: dolor

sort   string  optional  

Field to sort items by id,name,property_id. Example: totam

Filter advertisements

requires authentication

Filter advertisements based on the provided parameters

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisement?filter%5Btag%5D=eveniet&filter%5Bproperty_type%5D=voluptatibus&filter%5Bbedrooms%5D=ut&filter%5Bprice_range%5D=cum&filter%5Blocation%5D=incidunt" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"property_type\": 3,
    \"bedrooms\": 44,
    \"price_range\": 13,
    \"location\": 70
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisement"
);

const params = {
    "filter[tag]": "eveniet",
    "filter[property_type]": "voluptatibus",
    "filter[bedrooms]": "ut",
    "filter[price_range]": "cum",
    "filter[location]": "incidunt",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "property_type": 3,
    "bedrooms": 44,
    "price_range": 13,
    "location": 70
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 13,
            "title": "Advertisement Two",
            "description": "This is a test advertisement",
            "image": "https://dev.almoualemaqare.com/storage/advertisements/Lncoc7PAYzy1XPSibyXXpmm9DdfBCCFGTZQuk9dt.jpg"
        }
    ],
    "meta": {
        "pagination": {
            "total": 1,
            "per_page": 15,
            "count": 1,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/advertisement

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

filter[tag]   string  optional  

Field to filter advertisement by tag. Example: eveniet

filter[property_type]   string  optional  

Field to filter advertisement by property_type. Example: voluptatibus

filter[bedrooms]   string  optional  

Field to filter advertisement by bedrooms. Example: ut

filter[price_range]   string  optional  

Field to filter advertisement by price_range. Example: cum

filter[location]   string  optional  

Field to filter advertisement by location. Example: incidunt

Body Parameters

property_type   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
bedrooms   integer  optional  

Must be at least 0. Example: 44

price_range   number  optional  

Must be at least 0. Example: 13

location   integer  optional  

Must be at least 0. Example: 70

Filter advertisements

requires authentication

Filter advertisements based on the location

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/filter_advertisement_location?filter%5Blocation%5D=sed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"point_top\": \"nobis\",
    \"point_bottom\": \"quaerat\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/filter_advertisement_location"
);

const params = {
    "filter[location]": "sed",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "point_top": "nobis",
    "point_bottom": "quaerat"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [],
    "meta": {
        "pagination": {
            "total": 0,
            "per_page": 15,
            "count": 0,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/filter_advertisement_location

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

filter[location]   string  optional  

Field to filter advertisement by location. Example: sed

Body Parameters

point_top   string  optional  

Example: nobis

point_bottom   string  optional  

Example: quaerat

Get best advertisements

requires authentication

Filter advertisements based on the provided parameters

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/best-advertisement?filter%5Bproperty_type%5D=aspernatur&filter%5Bsearch%5D=voluptate" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/best-advertisement"
);

const params = {
    "filter[property_type]": "aspernatur",
    "filter[search]": "voluptate",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111193,
            "name": "Debitis quibusdam veritatis aut ducimus reprehenderit recusandae expedita dolorum.",
            "slug": "debitis-quibusdam-veritatis-aut-ducimus-reprehenderit-recusandae-expedita-dolorum",
            "property": {
                "id": 10053,
                "price": "750524.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 3903,
                "unit": "Meter",
                "address": "779 Shannon Walks\nNew Maximilian, IA 45745"
            },
            "listing_type": {
                "key": 2,
                "value": "For Rent"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "rent_term": "FOR_RENT",
            "privacy": 2,
            "image": "https://dev.almoualemaqare.com/storage/advertisements/SFmJEka06oxowsQOgPShmVGLG7i7XivhTqqNbE1S.jpg",
            "clicks": 59,
            "is_favorite": false
        },
        {
            "id": 11111192,
            "name": "Praesentium ducimus molestiae sed et corporis mollitia.",
            "slug": "praesentium-ducimus-molestiae-sed-et-corporis-mollitia",
            "property": {
                "id": 10053,
                "price": "750524.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 3903,
                "unit": "Meter",
                "address": "779 Shannon Walks\nNew Maximilian, IA 45745"
            },
            "listing_type": {
                "key": 2,
                "value": "For Rent"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "rent_term": "FOR_RENT",
            "privacy": 2,
            "image": "https://dev.almoualemaqare.com/storage/advertisements/VPFNC0R0v4mpJLFwxYrBZtNXFT7Jqp5uIMx5MdH6.jpg",
            "clicks": 87,
            "is_favorite": false
        },
        {
            "id": 11111191,
            "name": "Explicabo accusamus ad ipsam hic quam quia.",
            "slug": "explicabo-accusamus-ad-ipsam-hic-quam-quia",
            "property": {
                "id": 10053,
                "price": "750524.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 3903,
                "unit": "Meter",
                "address": "779 Shannon Walks\nNew Maximilian, IA 45745"
            },
            "listing_type": {
                "key": 2,
                "value": "For Rent"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "rent_term": "FOR_RENT",
            "privacy": 2,
            "image": "https://dev.almoualemaqare.com/storage/advertisements/QpaopSMdQW5i42FB4VoYMNEAMeQgDOYLkNbmz81Y.jpg",
            "clicks": 23,
            "is_favorite": false
        },
        {
            "id": 11111190,
            "name": "Quia aut vero omnis excepturi.",
            "slug": "quia-aut-vero-omnis-excepturi",
            "property": {
                "id": 10053,
                "price": "750524.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 3903,
                "unit": "Meter",
                "address": "779 Shannon Walks\nNew Maximilian, IA 45745"
            },
            "listing_type": {
                "key": 2,
                "value": "For Rent"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "rent_term": "FOR_RENT",
            "privacy": 2,
            "image": "https://dev.almoualemaqare.com/storage/advertisements/pHyEqUNUIywJeKUmYI8hIK8hwGgdOtABOzSdjLGU.jpg",
            "clicks": 45,
            "is_favorite": false
        },
        {
            "id": 11111189,
            "name": "Asperiores ab ut error autem.",
            "slug": "asperiores-ab-ut-error-autem",
            "property": {
                "id": 10053,
                "price": "750524.00",
                "currency": "SYP",
                "property_type": {
                    "key": 1,
                    "value": "APARTMENT"
                },
                "ownership_type": {
                    "key": 7,
                    "value": "NOTARY_PUBLIC_AGENCY"
                },
                "area_sqm": 3903,
                "unit": "Meter",
                "address": "779 Shannon Walks\nNew Maximilian, IA 45745"
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "privacy": 2,
            "image": "https://dev.almoualemaqare.com/storage/advertisements/MaidKL5hWujaG2PdAg1mk4CiWNjeSYSI7MrXi7py.jpg",
            "clicks": 41,
            "is_favorite": false
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/best-advertisement

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

filter[property_type]   string  optional  

Field to filter advertisement by property_type. Example: aspernatur

filter[search]   string  optional  

Field to perform a custom search. Example: voluptate

Change Advertisement Privacy

requires authentication

This endpoint lets the user change the privacy of a specific advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/change-privacy?privacy=sed" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"privacy\": 1,
    \"reason\": \"omnis\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/change-privacy"
);

const params = {
    "privacy": "sed",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "privacy": 1,
    "reason": "omnis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Advertisement privacy changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/advertisements/{advertisement_id}/change-privacy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

advertisement   string   

The ID of the advertisement. Example: perferendis

Query Parameters

privacy   string   

The new privacy value (e.g., 'private' or 'public'). Example: sed

Body Parameters

privacy   integer   

Example: 1

Must be one of:
  • 1
  • 2
reason   string  optional  

Example: omnis

location

APIs for Location Management

Show all locations

requires authentication

This endpoint lets you show all locations

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/locations?page=3&per_page=18&filter%5Bid%5D=distinctio&filter%5Barea%5D=quo&filter%5Bsearch%5D=rerum&sort=et" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/locations"
);

const params = {
    "page": "3",
    "per_page": "18",
    "filter[id]": "distinctio",
    "filter[area]": "quo",
    "filter[search]": "rerum",
    "sort": "et",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 194,
            "area": "Mason Johnston",
            "city": {
                "id": 11111352,
                "name": "Yadira Waelchi MD"
            }
        },
        {
            "id": 193,
            "area": "Dr. Brent Purdy Sr.",
            "city": {
                "id": 11111351,
                "name": "Mrs. Nelda Purdy V"
            }
        },
        {
            "id": 192,
            "area": "Ms. Dessie Goodwin MD",
            "city": {
                "id": 11111350,
                "name": "Waylon Thiel"
            }
        },
        {
            "id": 191,
            "area": "Ms. Ericka Reinger",
            "city": {
                "id": 11111349,
                "name": "Gerda Turner"
            }
        },
        {
            "id": 190,
            "area": "Jacques Steuber",
            "city": {
                "id": 11111348,
                "name": "Miss Yvette Strosin DDS"
            }
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/locations

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 3

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 18

filter[id]   string  optional  

Field to filter items by id. Example: distinctio

filter[area]   string  optional  

Field to filter items by area. Example: quo

filter[search]   string  optional  

Field to perform a custom search. Example: rerum

sort   string  optional  

Field to sort items by id,area. Example: et

service

APIs for Service Management

Show all services

requires authentication

This endpoint lets you show all services

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/services?page=11&per_page=15&filter%5Bid%5D=expedita&filter%5Btitle%5D=qui&filter%5Bdescription%5D=quia&sort=sint" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/services"
);

const params = {
    "page": "11",
    "per_page": "15",
    "filter[id]": "expedita",
    "filter[title]": "qui",
    "filter[description]": "quia",
    "sort": "sint",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 19,
            "title": "Miss"
        },
        {
            "id": 18,
            "title": "Mrs."
        },
        {
            "id": 17,
            "title": "Ms."
        },
        {
            "id": 16,
            "title": "Mr."
        },
        {
            "id": 15,
            "title": "Dr."
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/services

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 11

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 15

filter[id]   string  optional  

Field to filter items by id. Example: expedita

filter[title]   string  optional  

Field to filter items by title. Example: qui

filter[description]   string  optional  

Field to filter items by description. Example: quia

sort   string  optional  

Field to sort items by id,title. Example: sint

order

APIs for Order Management

Show all orders

requires authentication

This endpoint lets you show all orders

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/orders?page=3&per_page=6&filter%5Bid%5D=eos&filter%5Bsearch%5D=illum&sort=fugit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders"
);

const params = {
    "page": "3",
    "per_page": "6",
    "filter[id]": "eos",
    "filter[search]": "illum",
    "sort": "fugit",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111228,
            "property_type": {
                "key": 2,
                "value": "SHOP"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "58",
            "min_price": 111,
            "max_price": 539,
            "area_sqm": 3295,
            "location": {
                "id": 287,
                "value": "Gertrude Kuhlman"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 11112087,
                "name": "Prof. Griffin Cormier Ludie Daugherty"
            },
            "notes": "Est est dolore aspernatur corrupti molestiae maxime eligendi. Voluptate velit enim quis eveniet ex aliquam.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 11111227,
            "property_type": {
                "key": 6,
                "value": "FARM"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "12",
            "min_price": 439,
            "max_price": 752,
            "area_sqm": 3344,
            "location": {
                "id": 286,
                "value": "Dr. Mauricio Pfeffer"
            },
            "status": {
                "key": 4,
                "value": "ARCHIVED"
            },
            "user": {
                "id": 11112087,
                "name": "Prof. Griffin Cormier Ludie Daugherty"
            },
            "notes": "Illum optio nesciunt molestiae repudiandae quod. Dolore omnis quod qui praesentium consequatur dolore. Rerum voluptatem voluptas eum culpa rerum nemo quia. Quia in alias minus distinctio.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 11111226,
            "property_type": {
                "key": 4,
                "value": "BUILDING"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "13595578",
            "min_price": 347,
            "max_price": 845,
            "area_sqm": 1548,
            "location": {
                "id": 285,
                "value": "Maverick Hessel"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 11112087,
                "name": "Prof. Griffin Cormier Ludie Daugherty"
            },
            "notes": "Ad eius sed vero quae quisquam aut velit. Aut tempora nihil rem quos et.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 11111225,
            "property_type": {
                "key": 2,
                "value": "SHOP"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "9",
            "min_price": 222,
            "max_price": 918,
            "area_sqm": 742,
            "location": {
                "id": 284,
                "value": "Fern Lueilwitz"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 11112087,
                "name": "Prof. Griffin Cormier Ludie Daugherty"
            },
            "notes": "Ut fuga illum quis odit. Est et et optio aperiam commodi eum. Recusandae quia quisquam dolores qui rem sed.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 11111224,
            "property_type": {
                "key": 2,
                "value": "SHOP"
            },
            "order_type": {
                "key": 2,
                "value": "FOR_RENT"
            },
            "order_number": "9015",
            "min_price": 351,
            "max_price": 533,
            "area_sqm": 614,
            "location": {
                "id": 283,
                "value": "Ulices Crooks"
            },
            "status": {
                "key": 4,
                "value": "ARCHIVED"
            },
            "user": {
                "id": 11112087,
                "name": "Prof. Griffin Cormier Ludie Daugherty"
            },
            "notes": "Assumenda sint aut omnis odit quos. Dicta rerum rerum qui iusto. Eum ratione enim reiciendis quisquam. Necessitatibus aut sunt impedit reiciendis aliquam.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 3

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 6

filter[id]   string  optional  

Field to filter items by id. Example: eos

filter[search]   string  optional  

Field to perform a custom search. Example: illum

sort   string  optional  

Field to sort items by id. Example: fugit

Add Order

requires authentication

This endpoint lets you add order

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"property_type\": 9,
    \"area_sqm\": 62,
    \"min_price\": 6,
    \"max_price\": 86,
    \"location_id\": \"eaque\",
    \"order_type\": 2,
    \"notes\": \"ut\",
    \"contact_phone\": \"enim\",
    \"privacy\": 1
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "property_type": 9,
    "area_sqm": 62,
    "min_price": 6,
    "max_price": 86,
    "location_id": "eaque",
    "order_type": 2,
    "notes": "ut",
    "contact_phone": "enim",
    "privacy": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 19,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "order_type": {
            "key": 1,
            "value": "FOR_SALE"
        },
        "order_number": "hMqilin2gIYWPxs",
        "min_price": 100,
        "max_price": 200,
        "area_sqm": 2000,
        "location": {
            "id": 11111342,
            "value": "Brittany Beer V"
        },
        "status": {
            "key": 1,
            "value": "PENDING"
        },
        "user": {
            "id": 11442,
            "name": "Melyssa Simonis Sandra Botsford"
        },
        "notes": "simple note",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478665",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "The Order added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

property_type   integer   

Example: 9

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
area_sqm   number   

Must be at least 0. Example: 62

min_price   number   

Must be at least 0. Example: 6

max_price   number   

Must be at least 0. Example: 86

location_id   string   

Example: eaque

order_type   integer   

Example: 2

Must be one of:
  • 1
  • 2
notes   string  optional  

Example: ut

contact_phone   string   

Example: enim

privacy   integer   

Example: 1

Must be one of:
  • 1
  • 2

Show specific order

requires authentication

This endpoint lets you show specific order

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 18,
        "property_type": {
            "key": 6,
            "value": "FARM"
        },
        "order_type": {
            "key": 2,
            "value": "FOR_RENT"
        },
        "order_number": "861659",
        "min_price": 233,
        "max_price": 655,
        "area_sqm": 4024,
        "location": {
            "id": 11111339,
            "value": "Braden Carroll"
        },
        "status": {
            "key": 5,
            "value": "UNDER_REVIEW"
        },
        "user": {
            "id": 11440,
            "name": "Elody Crona Levi Walsh III"
        },
        "notes": "Cum quis omnis corporis quos magni est. Praesentium consequuntur nemo tempore. Veritatis provident repellat expedita dolorem.",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478665",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

Update specific Order

requires authentication

This endpoint lets you update specific Order

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"property_type\": 3,
    \"area_sqm\": 14,
    \"min_price\": 88,
    \"max_price\": 26,
    \"order_type\": 2,
    \"notes\": \"dolor\",
    \"contact_phone\": \"optio\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "property_type": 3,
    "area_sqm": 14,
    "min_price": 88,
    "max_price": 26,
    "order_type": 2,
    "notes": "dolor",
    "contact_phone": "optio"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 21,
        "property_type": {
            "key": 1,
            "value": "APARTMENT"
        },
        "order_type": {
            "key": 2,
            "value": "FOR_RENT"
        },
        "order_number": "3771",
        "min_price": 200,
        "max_price": 500,
        "area_sqm": 2000,
        "location": {
            "id": 11111344,
            "value": "Salvatore Wolff Sr."
        },
        "status": {
            "key": 5,
            "value": "UNDER_REVIEW"
        },
        "user": {
            "id": 11445,
            "name": "Dr. Reed Hettinger Cortez Kiehn"
        },
        "notes": "Quos rerum magni voluptas et architecto corrupti molestiae. Ex vel consequuntur dolorum quia quasi molestiae omnis.",
        "order_date": "08/09/2024",
        "contact_phone": "+963956478665",
        "order_privacy": {
            "key": 2,
            "value": "PUBLIC"
        },
        "reason": null,
        "privacy_reason": null
    },
    "message": "The Order updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/orders/{id}

PATCH api/v1/mobile/user/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

Body Parameters

property_type   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
area_sqm   number  optional  

Must be at least 0. Example: 14

min_price   number  optional  

Must be at least 0. Example: 88

max_price   number  optional  

Must be at least 0. Example: 26

location_id   string  optional  
order_type   integer  optional  

Example: 2

Must be one of:
  • 1
  • 2
notes   string  optional  

Example: dolor

contact_phone   string  optional  

Example: optio

Delete specific order

requires authentication

This endpoint lets you delete specific order

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Order deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/orders/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the order. Example: 1

Show all public orders

requires authentication

This endpoint lets you show all public orders for users

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/get-orders?page=20&per_page=10&filter%5Bid%5D=sapiente&filter%5Barea_sqm%5D=earum&filter%5Bproperty_type%5D=quaerat&sort=doloribus" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/get-orders"
);

const params = {
    "page": "20",
    "per_page": "10",
    "filter[id]": "sapiente",
    "filter[area_sqm]": "earum",
    "filter[property_type]": "quaerat",
    "sort": "doloribus",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 24,
            "property_type": {
                "key": 4,
                "value": "BUILDING"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "805680",
            "min_price": 107,
            "max_price": 677,
            "area_sqm": 4618,
            "location": {
                "id": 219,
                "value": "Damien Strosin"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 1194,
                "name": "Malcolm Conn Delia Walter"
            },
            "notes": "Odio at sapiente veritatis repellendus esse error. Et sit dolores exercitationem quia quia.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 23,
            "property_type": {
                "key": 1,
                "value": "APARTMENT"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "81706455",
            "min_price": 265,
            "max_price": 503,
            "area_sqm": 1799,
            "location": {
                "id": 218,
                "value": "Amira Monahan"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 1193,
                "name": "Curt Krajcik Demarco Anderson"
            },
            "notes": "Explicabo harum doloremque quas reprehenderit natus. Provident nesciunt et labore id. Eveniet commodi quia enim nam harum mollitia. Maxime non aut ea.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 22,
            "property_type": {
                "key": 6,
                "value": "FARM"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "542138",
            "min_price": 313,
            "max_price": 791,
            "area_sqm": 1167,
            "location": {
                "id": 217,
                "value": "Dr. Maude Reinger"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 1192,
                "name": "Olin Brekke Prof. Charlotte Okuneva MD"
            },
            "notes": "Nesciunt velit molestiae architecto voluptas quidem commodi fugit quis. Maxime omnis quia commodi amet quis dolor natus. Voluptas aspernatur alias sed corrupti nisi reprehenderit eum.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 21,
            "property_type": {
                "key": 8,
                "value": "LAND"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "3984687",
            "min_price": 317,
            "max_price": 951,
            "area_sqm": 2064,
            "location": {
                "id": 216,
                "value": "Antoinette Tromp"
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 1191,
                "name": "Rosalia Nicolas Glenda Kutch"
            },
            "notes": "Ducimus eos qui enim assumenda aut perferendis perferendis. Numquam et voluptatum possimus amet in qui. Fugit deleniti facere esse vel nulla qui.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        },
        {
            "id": 20,
            "property_type": {
                "key": 1,
                "value": "APARTMENT"
            },
            "order_type": {
                "key": 1,
                "value": "FOR_SALE"
            },
            "order_number": "32",
            "min_price": 466,
            "max_price": 958,
            "area_sqm": 3904,
            "location": {
                "id": 215,
                "value": "Prof. Alexane Douglas Jr."
            },
            "status": {
                "key": 2,
                "value": "APPROVED"
            },
            "user": {
                "id": 1190,
                "name": "Aubree Stracke Trisha Ullrich II"
            },
            "notes": "Ex ea vitae quo hic deleniti aliquid. Sed et voluptas quas et sed ut. Et non facere numquam ipsam. Exercitationem voluptatum voluptas possimus animi blanditiis sint quae.",
            "order_date": "08/09/2024",
            "contact_phone": "+963956478665",
            "order_privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "reason": null,
            "privacy_reason": null
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/get-orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 20

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 10

filter[id]   string  optional  

Field to filter items by id. Example: sapiente

filter[area_sqm]   string  optional  

Field to filter items by area_sqm. Example: earum

filter[property_type]   string  optional  

Field to filter items by property_type. Example: quaerat

sort   string  optional  

Field to sort items by id. Example: doloribus

Change Order Privacy

requires authentication

This endpoint lets the user change the privacy of a specific order

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/change-privacy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"privacy\": 2,
    \"reason\": \"optio\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/change-privacy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "privacy": 2,
    "reason": "optio"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Order privacy changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/orders/{order_id}/change-privacy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

advertisement   string   

The ID of the order. Example: ut

Body Parameters

privacy   integer   

Example: 2

Must be one of:
  • 1
  • 2
reason   string  optional  

Example: optio

Favorites

APIs for Favorites Management

Show all advertisement

requires authentication

This endpoint lets user show all advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/favorites?page=18&per_page=14&filter%5Bid%5D=cumque&filter%5Btype%5D=velit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/favorites"
);

const params = {
    "page": "18",
    "per_page": "14",
    "filter[id]": "cumque",
    "filter[type]": "velit",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11,
            "model": {
                "id": 43,
                "name": "Voluptas quo debitis voluptatem.",
                "slug": "voluptas-quo-debitis-voluptatem",
                "property": {
                    "id": 11111200,
                    "price": "249919.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 9,
                        "value": "HOTEL"
                    },
                    "ownership_type": {
                        "key": 2,
                        "value": "GREEN_TITLE_DEAD"
                    },
                    "area_sqm": 3365,
                    "unit": "Meter",
                    "address": "8232 Rolfson Station\nRodriguezton, MI 96291-4149"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "MONTHLY",
                "image": "https://dev.almoualemaqare.com/storage/advertisements/YNs6e4cn70aP7sWDOBYMnthLs9xLFMrY6c6MlJGN.jpg",
                "clicks": 50,
                "is_favorite": true
            },
            "type": "ADVERTISEMENT"
        },
        {
            "id": 10,
            "model": {
                "id": 42,
                "name": "Natus ipsum dolores molestiae sunt aliquam est repellendus.",
                "slug": "natus-ipsum-dolores-molestiae-sunt-aliquam-est-repellendus",
                "property": {
                    "id": 11111199,
                    "price": "130451.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 6,
                        "value": "FARM"
                    },
                    "ownership_type": {
                        "key": 3,
                        "value": "AGRICULTURAL_GREEN_TITLE_DEAD"
                    },
                    "area_sqm": 2418,
                    "unit": "Meter",
                    "address": "5921 Becker Streets\nPowlowskimouth, NM 88151-6434"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "MONTHLY",
                "image": "https://dev.almoualemaqare.com/storage/advertisements/FZxzHhpjgc2SgWXp2yTliC5BzJx1o44R0R8vUoVv.jpg",
                "clicks": 33,
                "is_favorite": true
            },
            "type": "ADVERTISEMENT"
        },
        {
            "id": 9,
            "model": {
                "id": 41,
                "name": "Nemo sit pariatur vitae rem dolor occaecati.",
                "slug": "nemo-sit-pariatur-vitae-rem-dolor-occaecati",
                "property": {
                    "id": 11111198,
                    "price": "941022.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 2,
                        "value": "SHOP"
                    },
                    "ownership_type": {
                        "key": 8,
                        "value": "OTHER"
                    },
                    "area_sqm": 2201,
                    "unit": "Meter",
                    "address": "70736 Nienow Stravenue\nEast Millieville, WY 54590"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "DAILY",
                "image": "https://dev.almoualemaqare.com/storage/advertisements/500B4erHc7mkvRcVJY45TG02OIIhrOpQd4UvwZ0I.jpg",
                "clicks": 31,
                "is_favorite": true
            },
            "type": "ADVERTISEMENT"
        },
        {
            "id": 8,
            "model": {
                "id": 40,
                "name": "Ducimus quisquam laudantium voluptas quaerat.",
                "slug": "ducimus-quisquam-laudantium-voluptas-quaerat",
                "property": {
                    "id": 11111197,
                    "price": "991637.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 5,
                        "value": "OFFICE"
                    },
                    "ownership_type": {
                        "key": 1,
                        "value": "COURT_JUDGMENT"
                    },
                    "area_sqm": 4489,
                    "unit": "Meter",
                    "address": "42471 Horacio Lakes Suite 021\nNew Arlene, SC 78122"
                },
                "listing_type": {
                    "key": 2,
                    "value": "For Rent"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "rent_term": "DAILY",
                "image": "https://dev.almoualemaqare.com/storage/advertisements/oj2bTwUrqyjg5U992nCdStyHfqRqWm6W0wVn23a0.jpg",
                "clicks": 1,
                "is_favorite": true
            },
            "type": "ADVERTISEMENT"
        },
        {
            "id": 7,
            "model": {
                "id": 39,
                "name": "Laudantium aliquam officia quis cupiditate possimus provident dignissimos culpa.",
                "slug": "laudantium-aliquam-officia-quis-cupiditate-possimus-provident-dignissimos-culpa",
                "property": {
                    "id": 11111196,
                    "price": "252787.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 6,
                        "value": "FARM"
                    },
                    "ownership_type": {
                        "key": 7,
                        "value": "NOTARY_PUBLIC_AGENCY"
                    },
                    "area_sqm": 3281,
                    "unit": "Meter",
                    "address": "93157 Dietrich Mill\nLake Brian, MT 03711-3320"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "image": "https://dev.almoualemaqare.com/storage/advertisements/Sfzr5eNoorfJbRzLAA6NyKvAFew5GY4BJdy4NdZk.jpg",
                "clicks": 8,
                "is_favorite": true
            },
            "type": "ADVERTISEMENT"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/favorites

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 18

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 14

filter[id]   string  optional  

Field to filter items by id. Example: cumque

filter[type]   string  optional  

Field to filter items by type. Example: velit

Add Favorite

requires authentication

This endpoint lets user add advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 3,
        "model": {
            "id": 11111180,
            "name": "Voluptates molestiae nulla et aspernatur velit ullam labore.",
            "slug": "voluptates-molestiae-nulla-et-aspernatur-velit-ullam-labore",
            "property": {
                "id": 10059,
                "price": "301428.00",
                "currency": "SYP",
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "ownership_type": {
                    "key": 4,
                    "value": "HOUSING_TITLE_DEAD"
                },
                "area_sqm": 4861,
                "unit": "Meter",
                "address": "69160 Mayer Extensions Apt. 351\nNorrisland, OH 88112-7936"
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "image": "https://dev.almoualemaqare.com/storage/advertisements/LWVlLOkvpKbViRRhk6gykhFmblVmBIWmZtTrFsd2.jpg",
            "clicks": 58,
            "is_favorite": true
        },
        "type": "ADVERTISEMENT"
    },
    "message": "The Favorite added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/advertisements/{advertisement_id}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Delete specific Favorite

requires authentication

This endpoint lets user delete specific advertisement

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Favorite deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/advertisements/{advertisement_id}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Add Favorite

requires authentication

This endpoint lets user add advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/properties/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/properties/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 3,
        "model": {
            "id": 11111180,
            "name": "Voluptates molestiae nulla et aspernatur velit ullam labore.",
            "slug": "voluptates-molestiae-nulla-et-aspernatur-velit-ullam-labore",
            "property": {
                "id": 10059,
                "price": "301428.00",
                "currency": "SYP",
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "ownership_type": {
                    "key": 4,
                    "value": "HOUSING_TITLE_DEAD"
                },
                "area_sqm": 4861,
                "unit": "Meter",
                "address": "69160 Mayer Extensions Apt. 351\nNorrisland, OH 88112-7936"
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "image": "https://dev.almoualemaqare.com/storage/advertisements/LWVlLOkvpKbViRRhk6gykhFmblVmBIWmZtTrFsd2.jpg",
            "clicks": 58,
            "is_favorite": true
        },
        "type": "ADVERTISEMENT"
    },
    "message": "The Favorite added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/properties/{property}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

property   integer   

The property. Example: 1

Delete specific Favorite

requires authentication

This endpoint lets user delete specific advertisement

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/properties/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/properties/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Favorite deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/properties/{property}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

property   integer   

The property. Example: 1

Add Favorite

requires authentication

This endpoint lets user add advertisement

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 3,
        "model": {
            "id": 11111180,
            "name": "Voluptates molestiae nulla et aspernatur velit ullam labore.",
            "slug": "voluptates-molestiae-nulla-et-aspernatur-velit-ullam-labore",
            "property": {
                "id": 10059,
                "price": "301428.00",
                "currency": "SYP",
                "property_type": {
                    "key": 4,
                    "value": "BUILDING"
                },
                "ownership_type": {
                    "key": 4,
                    "value": "HOUSING_TITLE_DEAD"
                },
                "area_sqm": 4861,
                "unit": "Meter",
                "address": "69160 Mayer Extensions Apt. 351\nNorrisland, OH 88112-7936"
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "exhibitor_type": {
                "key": 2,
                "value": "Property Owner"
            },
            "image": "https://dev.almoualemaqare.com/storage/advertisements/LWVlLOkvpKbViRRhk6gykhFmblVmBIWmZtTrFsd2.jpg",
            "clicks": 58,
            "is_favorite": true
        },
        "type": "ADVERTISEMENT"
    },
    "message": "The Favorite added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/orders/{order_id}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

Delete specific Favorite

requires authentication

This endpoint lets user delete specific advertisement

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/favorite" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/favorite"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Favorite deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/orders/{order_id}/favorite

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

ContactUs

APIs for Contact Us Management

Add Contact Us

requires authentication

This endpoint lets user add contact us

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/contact_us" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"subject\": 1,
    \"message\": \"qbwidhltyxkqpvtskivfk\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/contact_us"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "subject": 1,
    "message": "qbwidhltyxkqpvtskivfk"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Your message has been sent successfully.",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/contact_us

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

user_id   string  optional  
phone   string  optional  
subject   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
  • 3
  • 4
message   string   

Must not be greater than 255 characters. Example: qbwidhltyxkqpvtskivfk

notification

APIs for Notification Management

Show all User Notifications

requires authentication

This endpoint lets user show all notifications

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "a110dfd5-0299-3dd4-8ac0-d8fb9151367f",
            "data": {
                "0": "Aliquam dolore ea suscipit aspernatur et.",
                "title": "Unknown Notification Title",
                "body": "Unknown Notification Body.",
                "icon": "Unknown Notification Icon."
            },
            "read": false,
            "created_at": "2024-09-08 06:33:29"
        },
        {
            "id": "928c3a04-9829-345b-b0d2-e13ff6c7ff85",
            "data": {
                "0": "Autem aut rerum dolorum laborum suscipit.",
                "title": "Unknown Notification Title",
                "body": "Unknown Notification Body.",
                "icon": "Unknown Notification Icon."
            },
            "read": false,
            "created_at": "2024-09-08 06:33:29"
        },
        {
            "id": "926de927-5ac2-32c2-ad8f-e47f91805965",
            "data": {
                "0": "Vero adipisci occaecati voluptas eius eaque magnam.",
                "title": "Unknown Notification Title",
                "body": "Unknown Notification Body.",
                "icon": "Unknown Notification Icon."
            },
            "read": false,
            "created_at": "2024-09-08 06:33:29"
        },
        {
            "id": "90d41208-6cbe-3ad7-97f2-b01bd6f33a67",
            "data": {
                "0": "Doloribus magni velit aut.",
                "title": "Unknown Notification Title",
                "body": "Unknown Notification Body.",
                "icon": "Unknown Notification Icon."
            },
            "read": false,
            "created_at": "2024-09-08 06:33:29"
        },
        {
            "id": "8fd57695-61d7-3481-8d3f-a945c41b99f5",
            "data": {
                "0": "Aut soluta corrupti provident mollitia odio exercitationem optio.",
                "title": "Unknown Notification Title",
                "body": "Unknown Notification Body.",
                "icon": "Unknown Notification Icon."
            },
            "read": false,
            "created_at": "2024-09-08 06:33:29"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/notifications

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Mark all notifications as read for the given user.

requires authentication

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications/mark-all-as-read" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications/mark-all-as-read"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Notifications updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/notifications/mark-all-as-read

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Mark the given notification as read.

requires authentication

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications/1234567/mark-as-read" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/notifications/1234567/mark-as-read"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Notification updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/notifications/{notification_id}/mark-as-read

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

notification_id   string   

The ID of the notification. Example: 1234567

reviews

APIs for reviews Management

Show all reviews

requires authentication

This endpoint lets you show all reviews

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/reviews?page=17&per_page=5&filter%5Bid%5D=soluta&filter%5Brating%5D=beatae&filter%5Bstatus%5D=voluptate&filter%5Buser_id%5D=assumenda&sort=est" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/reviews"
);

const params = {
    "page": "17",
    "per_page": "5",
    "filter[id]": "soluta",
    "filter[rating]": "beatae",
    "filter[status]": "voluptate",
    "filter[user_id]": "assumenda",
    "sort": "est",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 11111157,
            "rating": 2,
            "comment": "Molestiae magnam provident ducimus facilis.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 11478,
                "name": "Mrs. Victoria Kub PhD Keith Cummings"
            },
            "model": {
                "id": 490,
                "name": "Dr. Asha Boehm",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY",
            "review_date": "2024-09-08T06:33:33.000000Z"
        },
        {
            "id": 11111156,
            "rating": 4,
            "comment": "Et omnis non aut autem delectus ducimus.",
            "status": {
                "key": 3,
                "value": "REJECTED"
            },
            "user": {
                "id": 11476,
                "name": "Dayne Blanda Monserrate Beier Sr."
            },
            "model": {
                "id": 490,
                "name": "Dr. Asha Boehm",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY",
            "review_date": "2024-09-08T06:33:33.000000Z"
        },
        {
            "id": 11111155,
            "rating": 3,
            "comment": "At minima perferendis qui aut eligendi officia.",
            "status": {
                "key": 2,
                "value": "ACTIVE"
            },
            "user": {
                "id": 11474,
                "name": "Prof. Paxton Gottlieb Katarina Corkery"
            },
            "model": {
                "id": 490,
                "name": "Dr. Asha Boehm",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY",
            "review_date": "2024-09-08T06:33:33.000000Z"
        },
        {
            "id": 11111154,
            "rating": 5,
            "comment": "Ipsam mollitia voluptatum ipsam dolores quod assumenda perferendis.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 11472,
                "name": "Estel Halvorson PhD Prof. Francisca Stracke II"
            },
            "model": {
                "id": 490,
                "name": "Dr. Asha Boehm",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY",
            "review_date": "2024-09-08T06:33:33.000000Z"
        },
        {
            "id": 11111153,
            "rating": 1,
            "comment": "Aspernatur ducimus dolores architecto doloremque ut id ipsam qui.",
            "status": {
                "key": 1,
                "value": "UNDER_REVIEW"
            },
            "user": {
                "id": 11470,
                "name": "Liza Cartwright Adah Braun"
            },
            "model": {
                "id": 490,
                "name": "Dr. Asha Boehm",
                "type": {
                    "key": 2,
                    "value": "OFFICE"
                },
                "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
            },
            "type": "AGENCY",
            "review_date": "2024-09-08T06:33:33.000000Z"
        }
    ],
    "meta": {
        "pagination": {
            "total": 15,
            "per_page": 5,
            "count": 5,
            "current_page": 2
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/reviews

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   integer  optional  

Field to select page. Defaults to '1'. Example: 17

per_page   integer  optional  

Field to select items per page. Defaults to '15'. Example: 5

filter[id]   string  optional  

Field to filter items by id. Example: soluta

filter[rating]   string  optional  

Field to filter items by rating. Example: beatae

filter[status]   string  optional  

Field to filter items by status. Example: voluptate

filter[user_id]   string  optional  

Field to filter items by user id. Example: assumenda

sort   string  optional  

Field to sort items by id,rating,status. Example: est

Add Review

requires authentication

This endpoint lets user add Review

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 62,
    \"comment\": \"ptpndflhgrmfpvqjtsctwm\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rating": 62,
    "comment": "ptpndflhgrmfpvqjtsctwm"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "rating": 5,
        "comment": "This Agency is great",
        "status": {
            "key": 1,
            "value": "UNDER_REVIEW"
        },
        "user": {
            "id": 1259,
            "name": "Lura Stark Emely Ondricka"
        },
        "model": {
            "id": 11111466,
            "name": "Alessandra Witting",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "type": "AGENCY",
        "review_date": "2024-09-08T06:33:33.000000Z"
    },
    "message": "The Review added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/advertisements/{advertisement_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Body Parameters

rating   number   

Must be at least 0. Example: 62

comment   string   

Must not be greater than 255 characters. Example: ptpndflhgrmfpvqjtsctwm

Delete specific review

requires authentication

This endpoint lets you delete specific review

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/advertisements/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Review deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/advertisements/{advertisement_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_id   integer   

The ID of the advertisement. Example: 1

Add Review

requires authentication

This endpoint lets user add Review

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 45,
    \"comment\": \"phncvgztth\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rating": 45,
    "comment": "phncvgztth"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "rating": 5,
        "comment": "This Agency is great",
        "status": {
            "key": 1,
            "value": "UNDER_REVIEW"
        },
        "user": {
            "id": 1259,
            "name": "Lura Stark Emely Ondricka"
        },
        "model": {
            "id": 11111466,
            "name": "Alessandra Witting",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "type": "AGENCY",
        "review_date": "2024-09-08T06:33:33.000000Z"
    },
    "message": "The Review added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/agencies/{agency_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Body Parameters

rating   number   

Must be at least 0. Example: 45

comment   string   

Must not be greater than 255 characters. Example: phncvgztth

Delete specific review

requires authentication

This endpoint lets you delete specific review

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/agencies/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Review deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/agencies/{agency_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

agency_id   integer   

The ID of the agency. Example: 1

Add Review

requires authentication

This endpoint lets user add Review

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"rating\": 78,
    \"comment\": \"htkw\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "rating": 78,
    "comment": "htkw"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 6,
        "rating": 5,
        "comment": "This Agency is great",
        "status": {
            "key": 1,
            "value": "UNDER_REVIEW"
        },
        "user": {
            "id": 1259,
            "name": "Lura Stark Emely Ondricka"
        },
        "model": {
            "id": 11111466,
            "name": "Alessandra Witting",
            "type": {
                "key": 2,
                "value": "OFFICE"
            },
            "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png"
        },
        "type": "AGENCY",
        "review_date": "2024-09-08T06:33:33.000000Z"
    },
    "message": "The Review added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/orders/{order_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

Body Parameters

rating   number   

Must be at least 0. Example: 78

comment   string   

Must not be greater than 255 characters. Example: htkw

Delete specific review

requires authentication

This endpoint lets you delete specific review

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/review" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/orders/1/review"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "The Review deleted successfully",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/orders/{order_id}/review

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

order_id   integer   

The ID of the order. Example: 1

account

APIs for Account Management

Get financial contacts' accounts.

requires authentication

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 3,
            "second_account_id": 11111511,
            "second_account": "Rowland Ward Jr. Natalia McCullough",
            "number_of_transactions": 2
        },
        {
            "id": 2,
            "second_account_id": 11111509,
            "second_account": "Colby Morissette Ryder Nikolaus III",
            "number_of_transactions": 2
        },
        {
            "id": 1,
            "second_account_id": 11111507,
            "second_account": "Zachariah Klocko Dr. Freda Treutel",
            "number_of_transactions": 2
        }
    ],
    "meta": {
        "pagination": {
            "total": 3,
            "per_page": 15,
            "count": 3,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/accounts

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Get all reasons for the authenticated user.

requires authentication

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 3,
            "account_id": 1,
            "reason": "Voluptas iste dignissimos corrupti aliquid quis veritatis et."
        },
        {
            "id": 2,
            "account_id": 1,
            "reason": "Saepe fuga quibusdam sequi illum ex porro omnis eos."
        },
        {
            "id": 1,
            "account_id": 1,
            "reason": "Deserunt laudantium adipisci porro ab repellat et magni."
        }
    ],
    "meta": {
        "pagination": {
            "total": 3,
            "per_page": 15,
            "count": 3,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/accounts/reasons

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Add Account Reason

requires authentication

This endpoint lets user add Account Reason

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"account_id\": \"debitis\",
    \"reason\": \"nsegoqgkjrnekcrhl\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "account_id": "debitis",
    "reason": "nsegoqgkjrnekcrhl"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "account_id": 1,
        "reason": "Some Reason"
    },
    "message": "The Account Reason added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/reasons

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

account_id   string   

Example: debitis

reason   string   

Must not be greater than 255 characters. Example: nsegoqgkjrnekcrhl

Update specific Account Reason

requires authentication

This endpoint lets user update own Account Reason

Example request:
curl --request PUT \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons/impedit" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"reason\": \"tyufyuistqptqvtuz\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reasons/impedit"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "reason": "tyufyuistqptqvtuz"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 5,
        "account_id": 7,
        "reason": "Updated Reason"
    },
    "message": "The Account Reason Updated successfully",
    "status_code": 200
}
 

Request      

PUT api/v1/mobile/user/accounts/reasons/{account_reason_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

account_reason_id   string   

The ID of the account reason. Example: impedit

Body Parameters

account_id   string  optional  
reason   string  optional  

Must not be greater than 255 characters. Example: tyufyuistqptqvtuz

Get ledger entries for a specific account.

requires authentication

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/19/ledgers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/19/ledgers"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "entry_id": 1,
            "balance": 251.36,
            "currency": "SYP",
            "credit": "607.88",
            "debit": "251.36",
            "reason_id": 6,
            "reason": "fix elevator in mazeeh apartment",
            "transaction_datetime": "08 Sun Sep 2024"
        }
    ],
    "meta": {
        "pagination": {
            "total": 1,
            "per_page": 15,
            "count": 1,
            "current_page": 1
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/accounts/{account_id}/ledgers

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

account_id   integer   

The ID of the account. Example: 19

Add a Vault Pin for the specified account.

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/store-vault-pin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"vault_pin\": \"o\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/store-vault-pin"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "vault_pin": "o"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "The account Vault Pin added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/store-vault-pin

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

vault_pin   string   

Must be at least 4 characters. Must not be greater than 6 characters. Example: o

reset the Vault Pin using otp .

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/login" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"vault_pin\": \"ex\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/login"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "vault_pin": "ex"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Successfully logged in",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/login

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

vault_pin   string   

Example: ex

reset the Vault Pin using otp .

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reset-pin" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"vault_pin\": \"omnis\",
    \"otp_code\": \"tempore\"
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/reset-pin"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "vault_pin": "omnis",
    "otp_code": "tempore"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Vault Pin has been changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/reset-pin

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

vault_pin   string   

Example: omnis

otp_code   string   

Example: tempore

phone   string  optional  

Retrieve soft deleted ledger entries for the authenticated user.

requires authentication

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/get-deleted-ledgers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/get-deleted-ledgers"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 27,
        "sender": "Kory Doyle Lacey Wilderman",
        "receiver": "Austin Feeney Frieda Hettinger",
        "credit": "818.67",
        "debit": "682.78",
        "currency": "SYP",
        "image": "https://dev.almoualemaqare.com/storage/ledgerEntries/VLTwvjH6sS2RLz5bjAYsaDvWsdUajrA1MBYqYHw9.jpg",
        "note": "Modi odit atque repudiandae odio non dignissimos.",
        "transaction_datetime": "2024-09-08T06:33:28.000000Z",
        "ledger_entry_status": {
            "key": 2,
            "value": "RECEIVED"
        },
        "ledger_entry_type": {
            "key": 2,
            "value": "PAYMENT"
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/accounts/get-deleted-ledgers

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Get specific ledger entry.

requires authentication

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/6" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/6"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 27,
        "sender": "Kory Doyle Lacey Wilderman",
        "receiver": "Austin Feeney Frieda Hettinger",
        "credit": "818.67",
        "debit": "682.78",
        "currency": "SYP",
        "image": "https://dev.almoualemaqare.com/storage/ledgerEntries/VLTwvjH6sS2RLz5bjAYsaDvWsdUajrA1MBYqYHw9.jpg",
        "note": "Modi odit atque repudiandae odio non dignissimos.",
        "transaction_datetime": "2024-09-08T06:33:28.000000Z",
        "ledger_entry_status": {
            "key": 2,
            "value": "RECEIVED"
        },
        "ledger_entry_type": {
            "key": 2,
            "value": "PAYMENT"
        }
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/mobile/user/accounts/{ledger_entry_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ledger_entry_id   integer   

The ID of the ledger entry. Example: 6

Change a specified ledger entry status.

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/6/change-status" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ledger_entry_status\": 3
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/6/change-status"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ledger_entry_status": 3
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Ledger entry status has been changed successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/{ledger_entry_id}/change-status

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ledger_entry_id   integer   

The ID of the ledger entry. Example: 6

Body Parameters

ledger_entry_status   integer   

Example: 3

Must be one of:
  • 1
  • 2
  • 3

Add a new ledger entry for the specified account.

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/15/ledgers" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "reason=reiciendis"\
    --form "user_id=aut"\
    --form "debit=7"\
    --form "note=eligendi"\
    --form "ledger_entry_type=1"\
    --form "proof_of_payment_image=@/tmp/phpaGIIkD" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/15/ledgers"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('reason', 'reiciendis');
body.append('user_id', 'aut');
body.append('debit', '7');
body.append('note', 'eligendi');
body.append('ledger_entry_type', '1');
body.append('proof_of_payment_image', document.querySelector('input[name="proof_of_payment_image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "entry_id": 28,
        "balance": -100,
        "currency": "SYP",
        "credit": "100.00",
        "debit": "0.00",
        "reason_id": 39,
        "reason": "fix home",
        "transaction_datetime": "08 Sun Sep 2024"
    },
    "message": "The account ledger entry added successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/{account}/ledgers

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

account   integer   

The account. Example: 15

Body Parameters

reason   string   

Example: reiciendis

user_id   string   

Example: aut

debit   number   

Must be at least 0. Example: 7

note   string  optional  

Example: eligendi

proof_of_payment_image   file   

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpaGIIkD

ledger_entry_type   integer   

Example: 1

Must be one of:
  • 1
  • 2

Update a ledger entry for the specified account.

requires authentication

Example request:
curl --request POST \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/20" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "debit=39"\
    --form "note=doloribus"\
    --form "ledger_entry_type=1"\
    --form "proof_of_payment_image=@/tmp/phpEIAJLc" 
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/20"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('debit', '39');
body.append('note', 'doloribus');
body.append('ledger_entry_type', '1');
body.append('proof_of_payment_image', document.querySelector('input[name="proof_of_payment_image"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "entry_id": 13,
        "balance": -100,
        "currency": "SYP",
        "credit": 0,
        "debit": -100,
        "reason_id": 24,
        "reason": "fix home",
        "transaction_datetime": "08 Sun Sep 2024"
    },
    "message": "The account ledger entry updated successfully",
    "status_code": 200
}
 

Request      

POST api/v1/mobile/user/accounts/{ledger_entry_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

ledger_entry_id   integer   

The ID of the ledger entry. Example: 20

Body Parameters

reason   string  optional  
user_id   string  optional  
debit   number  optional  

Must be at least 0. Example: 39

note   string  optional  

Example: doloribus

proof_of_payment_image   file  optional  

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpEIAJLc

ledger_entry_type   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2

soft delete a specified ledger entry.

requires authentication

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/17/soft-delete" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ledger_entry_status\": 3
}"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/17/soft-delete"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ledger_entry_status": 3
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Ledger entry will delete when other side approve on that",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/accounts/{ledger_entry_id}/soft-delete

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ledger_entry_id   integer   

The ID of the ledger entry. Example: 17

Body Parameters

ledger_entry_status   integer   

Example: 3

Must be one of:
  • 1
  • 2
  • 3

Delete specific Ledger Entry

requires authentication

This endpoint lets user delete specific Ledger Entry

Example request:
curl --request DELETE \
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/mobile/user/accounts/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Ledger entry will delete when other side approve on that",
    "status_code": 200
}
 

Request      

DELETE api/v1/mobile/user/accounts/{ledger_entry_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ledger_entry_id   integer   

The ID of the ledger entry. Example: 1

Web

APIs for Web Platform

Show home advertisements

Get home information about advertisements

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/site/home" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/site/home"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "mainSlider": [
            {
                "id": 11111183,
                "name": "Voluptatibus maxime quisquam et neque inventore culpa quaerat in.",
                "slug": "voluptatibus-maxime-quisquam-et-neque-inventore-culpa-quaerat-in",
                "property": {
                    "id": 10051,
                    "price": "95692.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 1,
                        "value": "APARTMENT"
                    },
                    "ownership_type": {
                        "key": 2,
                        "value": "GREEN_TITLE_DEAD"
                    },
                    "area_sqm": 1376,
                    "unit": "Meter",
                    "address": "8825 Elaina Bridge\nAlbury, PA 09173-4931"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/1vfAai3iWvLTqka9z9cRY5YYPbAPI0z0mle5yoe0.jpg",
                "clicks": 34,
                "is_favorite": false
            }
        ],
        "top_ads": [
            {
                "id": 11111183,
                "name": "Voluptatibus maxime quisquam et neque inventore culpa quaerat in.",
                "slug": "voluptatibus-maxime-quisquam-et-neque-inventore-culpa-quaerat-in",
                "property": {
                    "id": 10051,
                    "price": "95692.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 1,
                        "value": "APARTMENT"
                    },
                    "ownership_type": {
                        "key": 2,
                        "value": "GREEN_TITLE_DEAD"
                    },
                    "area_sqm": 1376,
                    "unit": "Meter",
                    "address": "8825 Elaina Bridge\nAlbury, PA 09173-4931"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/1vfAai3iWvLTqka9z9cRY5YYPbAPI0z0mle5yoe0.jpg",
                "clicks": 34,
                "is_favorite": false
            }
        ],
        "best_ads": [
            {
                "id": 11111183,
                "name": "Voluptatibus maxime quisquam et neque inventore culpa quaerat in.",
                "slug": "voluptatibus-maxime-quisquam-et-neque-inventore-culpa-quaerat-in",
                "property": {
                    "id": 10051,
                    "price": "95692.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 1,
                        "value": "APARTMENT"
                    },
                    "ownership_type": {
                        "key": 2,
                        "value": "GREEN_TITLE_DEAD"
                    },
                    "area_sqm": 1376,
                    "unit": "Meter",
                    "address": "8825 Elaina Bridge\nAlbury, PA 09173-4931"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 2,
                    "value": "Property Owner"
                },
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/1vfAai3iWvLTqka9z9cRY5YYPbAPI0z0mle5yoe0.jpg",
                "clicks": 34,
                "is_favorite": false
            }
        ]
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/site/home

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Show specific advertisement

Get detailed information about a specific advertisement

Example request:
curl --request GET \
    --get "https://dev.almoualemaqare.com/api/v1/site/advertisement/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://dev.almoualemaqare.com/api/v1/site/advertisement/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "advertisement": {
            "id": 11,
            "name": "Debitis vel eaque ab et facere dicta.",
            "description": "Dolorem nobis et nostrum porro. Magni maiores distinctio blanditiis. Sed et nulla officiis.",
            "property": {
                "id": 11111157,
                "title": null,
                "price": "244919.00",
                "currency": "SYP",
                "negotiable": 1,
                "property_type": {
                    "key": 8,
                    "value": "LAND"
                },
                "ownership_type": {
                    "key": 8,
                    "value": "OTHER"
                },
                "furnishing": {
                    "key": 3,
                    "value": "FURNISHED"
                },
                "cladding_status": {
                    "key": 3,
                    "value": "OLD"
                },
                "bedrooms": 4,
                "bathrooms": 3,
                "area_sqm": 1153,
                "floor_number": 1,
                "address": "7469 Johnathan Stream Suite 601\nLisaton, NY 39927-0577",
                "direction": {
                    "key": 1,
                    "value": "NORTH"
                },
                "view": "18844 Cassandre Divide Apt. 449\nWest Lilianaborough, OK 95586-9272",
                "geolocation": {
                    "latitude": 51.941776,
                    "longitude": -88.72732
                },
                "building_name_number": "506495",
                "street_name_number": "396311",
                "location": {
                    "id": 97,
                    "name": "Mrs. Valentina Runolfsson"
                },
                "user": {
                    "id": 651,
                    "name": "Linnea Dach Gavin Zboncak"
                },
                "status": {
                    "key": 1,
                    "value": "DRAFT"
                },
                "services": []
            },
            "listing_type": {
                "key": 1,
                "value": "For Sale"
            },
            "sale_type": {
                "key": 2,
                "value": "INSTALLMENT"
            },
            "privacy": {
                "key": 2,
                "value": "PUBLIC"
            },
            "images": [
                {
                    "image_url": "https://dev.almoualemaqare.com/storage/advertisements/odEBzaIh7cWcs5FY70Dk52xUoXqVW9Hyfgn39cGL.jpg"
                }
            ],
            "status": {
                "key": 1,
                "value": "PENDING"
            },
            "rent_term": {
                "key": 4,
                "value": "YEARLY"
            },
            "exhibitor_type": {
                "key": 1,
                "value": "Real Estate Office"
            },
            "agency": {
                "agency_info": {
                    "id": 11111315,
                    "name": "Adrienne Frami",
                    "logo": "https://dev.almoualemaqare.com/storage/agencies/logo.png",
                    "address": "Dicta non excepturi commodi.",
                    "reviews": 1
                }
            },
            "clicks": 12,
            "advertisement_date": "08 Sep 2024",
            "contact_phone": null
        },
        "similar_ads": [
            {
                "id": 11,
                "name": "Debitis vel eaque ab et facere dicta.",
                "slug": "debitis-vel-eaque-ab-et-facere-dicta",
                "property": {
                    "id": 11111157,
                    "price": "244919.00",
                    "currency": "SYP",
                    "property_type": {
                        "key": 8,
                        "value": "LAND"
                    },
                    "ownership_type": {
                        "key": 8,
                        "value": "OTHER"
                    },
                    "area_sqm": 1153,
                    "unit": "Meter",
                    "address": "7469 Johnathan Stream Suite 601\nLisaton, NY 39927-0577"
                },
                "listing_type": {
                    "key": 1,
                    "value": "For Sale"
                },
                "exhibitor_type": {
                    "key": 1,
                    "value": "Real Estate Office"
                },
                "privacy": 2,
                "image": "https://dev.almoualemaqare.com/storage/advertisements/odEBzaIh7cWcs5FY70Dk52xUoXqVW9Hyfgn39cGL.jpg",
                "clicks": 11,
                "is_favorite": false
            }
        ]
    },
    "message": "success",
    "status_code": 200
}
 

Request      

GET api/v1/site/advertisement/{advertisement_slug}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

advertisement_slug   integer   

The slug of the advertisement. Example: 1

Enums

PRIVATE: 1

PUBLIC: 2

PENDING: 1

APPROVED: 2

REJECTED: 3

ARCHIVED: 4

UNDER_REVIEW: 5

BEST: 1

TEST_TAG: 2

Exhibitor Type

REAL_ESTATE_OFFICE: 1

PROPERTY_OWNER: 2

PROPERTY_AGENT: 3

Listing Type

FOR_SALE: 1

FOR_RENT: 2

Rent Term

DAILY: 1

WEEKLY: 2

MONTHLY: 3

YEARLY: 4

Sale Type

CASH: 1

INSTALLMENT: 2

Agency Status

APPROVED: 1

REJECTED: 2

UNDER_REVIEW: 3

Agency Type

COMPANY: 1

OFFICE: 2

DEALER: 3

O S Type

ANDROID: 1

IOS: 2

Update Type

NORMAL: 1

FORCE: 2

Message Status

READ: 1

UNREAD: 2

RECEIVE: 3

Message Type

TEXT: 1

VIDEO: 2

IMAGE: 3

Chat Message Type

TEXT: 1

FILE: 2

IMAGE: 3

AUDIO: 4

Chat Reference Type

USER: 1

AGENCY: 2

Subject Type

PAYMENT_PROBLEM: 1

ACCOUNT_PROBLEM: 2

SUGGESTIONS: 3

COMPLAINTS: 4

Employees Status

ACTIVE: 1

DISABLED: 2

Employees Type

OWNER: 1

MANAGER: 2

NORMAL: 3

DRIVER: 4

BOY: 5

Favorite Reference Type

PROPERTY: 1

ADVERTISEMENT: 2

ORDER: 3

Ledger Entry Status

PENDING: 1

RECEIVED: 2

DELETED: 3

Ledger Entry Type

WORK: 1

PAYMENT: 2

Notification Type

Order Privacy

PRIVATE: 1

PUBLIC: 2

Order Status

PENDING: 1

APPROVED: 2

REJECTED: 3

ARCHIVED: 4

UNDER_REVIEW: 5

Order Type

FOR_SALE: 1

FOR_RENT: 2

Permission Type

INDEX_USER: INDEX_USER

SHOW_USER: SHOW_USER

STORE_USER: STORE_USER

UPDATE_USER: UPDATE_USER

DELETE_USER: DELETE_USER

SHOW_ROLE: SHOW_ROLE

STORE_ROLE: STORE_ROLE

DELETE_ROLE: DELETE_ROLE

UPDATE_ROLE: UPDATE_ROLE

INDEX_ROLE: INDEX_ROLE

EDIT_ROLE_PERMISSION: EDIT_ROLE_PERMISSION

SHOW_ROLE_PERMISSION: SHOW_ROLE_PERMISSION

SHOW_USER_ROLE: SHOW_USER_ROLE

EDIT_USER_ROLE: EDIT_USER_ROLE

SHOW_PERMISSIONS: SHOW_PERMISSIONS

INDEX_PROPERTY: INDEX_PROPERTY

SHOW_PROPERTY: SHOW_PROPERTY

STORE_PROPERTY: STORE_PROPERTY

UPDATE_PROPERTY: UPDATE_PROPERTY

DELETE_PROPERTY: DELETE_PROPERTY

INDEX_AGENCY: INDEX_AGENCY

SHOW_AGENCY: SHOW_AGENCY

STORE_AGENCY: STORE_AGENCY

UPDATE_AGENCY: UPDATE_AGENCY

DELETE_AGENCY: DELETE_AGENCY

INDEX_CITY: INDEX_CITY

SHOW_CITY: SHOW_CITY

STORE_CITY: STORE_CITY

UPDATE_CITY: UPDATE_CITY

DELETE_CITY: DELETE_CITY

INDEX_ORDER: INDEX_ORDER

SHOW_ORDER: SHOW_ORDER

STORE_ORDER: STORE_ORDER

DELETE_ORDER: DELETE_ORDER

UPDATE_ORDER: UPDATE_ORDER

UPDATE_ORDER_STATUS: UPDATE_ORDER_STATUS

UPDATE_ORDER_PRIVACY: UPDATE_ORDER_PRIVACY

INDEX_CLIENT: INDEX_CLIENT

SHOW_CLIENT: SHOW_CLIENT

STORE_CLIENT: STORE_CLIENT

DELETE_CLIENT: DELETE_CLIENT

UPDATE_CLIENT: UPDATE_CLIENT

INDEX_EMPLOYEE: INDEX_EMPLOYEE

SHOW_EMPLOYEE: SHOW_EMPLOYEE

STORE_EMPLOYEE: STORE_EMPLOYEE

DELETE_EMPLOYEE: DELETE_EMPLOYEE

UPDATE_EMPLOYEE: UPDATE_EMPLOYEE

DELETE_SERVICE: DELETE_SERVICE

INDEX_SERVICE: INDEX_SERVICE

SHOW_SERVICE: SHOW_SERVICE

STORE_SERVICE: STORE_SERVICE

UPDATE_SERVICE: UPDATE_SERVICE

DELETE_REVIEW: DELETE_REVIEW

STORE_REVIEW: STORE_REVIEW

INDEX_REVIEW: INDEX_REVIEW

SHOW_REVIEW: SHOW_REVIEW

UPDATE_REVIEW: UPDATE_REVIEW

UPDATE_REVIEW_STATUS: UPDATE_REVIEW_STATUS

INDEX_LOCATION: INDEX_LOCATION

DELETE_LOCATION: DELETE_LOCATION

STORE_LOCATION: STORE_LOCATION

SHOW_LOCATION: SHOW_LOCATION

UPDATE_LOCATION: UPDATE_LOCATION

INDEX_ADVERTISEMENT: INDEX_ADVERTISEMENT

SHOW_ADVERTISEMENT: SHOW_ADVERTISEMENT

STORE_ADVERTISEMENT: STORE_ADVERTISEMENT

DELETE_ADVERTISEMENT: DELETE_ADVERTISEMENT

UPDATE_ADVERTISEMENT: UPDATE_ADVERTISEMENT

UPDATE_ADVERTISEMENT_STATUS: UPDATE_ADVERTISEMENT_STATUS

UPDATE_ADVERTISEMENT_TAG: UPDATE_ADVERTISEMENT_TAG

DELETE_USER_REPORT: DELETE_USER_REPORT

INDEX_USER_REPORT: INDEX_USER_REPORT

SHOW_USER_REPORT: SHOW_USER_REPORT

UPDATE_USER_REPORT: UPDATE_USER_REPORT

INDEX_CONTACT_US: INDEX_CONTACT_US

DELETE_CONTACT_US: DELETE_CONTACT_US

SHOW_CONTACT_US: SHOW_CONTACT_US

INDEX_APPOINTMENT: INDEX_APPOINTMENT

SHOW_APPOINTMENT: SHOW_APPOINTMENT

STORE_APPOINTMENT: STORE_APPOINTMENT

DELETE_APPOINTMENT: DELETE_APPOINTMENT

UPDATE_APPOINTMENT: UPDATE_APPOINTMENT

INDEX_LEDGER_ENTRY: INDEX_LEDGER_ENTRY

SHOW_LEDGER_ENTRY: SHOW_LEDGER_ENTRY

STORE_LEDGER_ENTRY: STORE_LEDGER_ENTRY

UPDATE_LEDGER_ENTRY: UPDATE_LEDGER_ENTRY

DELETE_LEDGER_ENTRY: DELETE_LEDGER_ENTRY

INDEX_APPLICATION_UPDATE: INDEX_APPLICATION_UPDATE

STORE_APPLICATION_UPDATE: STORE_APPLICATION_UPDATE

DELETE_APPLICATION_UPDATE: DELETE_APPLICATION_UPDATE

SHOW_AGENCY_PROFILE: SHOW_AGENCY_PROFILE

UPDATE_AGENCY_STATUS: UPDATE_AGENCY_STATUS

UPDATE_AGENCY_PROFILE: UPDATE_AGENCY_PROFILE

Cladding Status

NEW: 1

GOOD: 2

OLD: 3

BLOCK: 4

DELUXE: 5

SUPER_DELUXE: 6

STRUCTURE_ONLY: 7

Directions

NORTH: 1

WEST: 2

SOUTH: 3

EAST: 4

NORTH_EAST: 5

NORTH_WEST: 6

SOUTH_EAST: 7

SOUTH_WEST: 8

NORTH_SOUTH: 9

EAST_WEST: 10

Furnishing Type

UNFURNISHED: 1

SIMI_FURNISHED: 2

FURNISHED: 3

Ownership Type

COURT_JUDGMENT: 1

GREEN_TITLE_DEAD: 2

AGRICULTURAL_GREEN_TITLE_DEAD: 3

HOUSING_TITLE_DEAD: 4

SHARES_TITLE_DEAD: 5

OUTRIGHT_SALE_CONTRACT: 6

NOTARY_PUBLIC_AGENCY: 7

OTHER: 8

Property Status

DRAFT: 1

ACTIVE: 2

EXPIRED: 3

CLOSED_BY_USER: 4

Property Type

APARTMENT: 1

SHOP: 2

VILLA: 3

BUILDING: 4

OFFICE: 5

FARM: 6

CHALET: 7

LAND: 8

HOTEL: 9

OTHER: 10

Report Reference Type

ORDER: 1

ADVERTISEMENT: 2

Report Status

UNDER_REVIEW: 1

ACTIVE: 2

REJECTED: 3

Review Reference Type

AGENCY: 1

PROPERTY: 2

ADVERTISEMENT: 3

ORDER: 4

Review Status

UNDER_REVIEW: 1

ACTIVE: 2

REJECTED: 3

Role Type

SUPER_ADMIN: SUPER_ADMIN

DATABASE: DATABASE

OPERATION: OPERATION

User Access Type

USER: 1

AGENT: 2

ADMIN: 4