General Introduction

Welcome to the Mawa.om API documentation. Mawa.om is a platform that provides various services related to real estate. This document will guide you through the endpoints, authentication, request and response formats, and usage examples of the Mawa.om API.

To use APIs that require an authorization key in the header and additional mandatory parameters in the body, follow these steps:

Obtain Authorization Key: Acquire the authorization key or token needed to authenticate with the API. This key is typically provided by the API provider upon registration or authentication Click here to login.

Understand API Documentation: Carefully review the API documentation to understand the endpoints, HTTP methods (e.g., GET, POST), required headers, and parameters expected in the request body.

Set Up Request Header: Add the authorization key to the request header. This is usually done by including an "Authorization" header with the value "{YOUR_API_KEY}".

Prepare Request Body: Construct the request body according to the API specifications. Include any mandatory parameters required by the API. The body may need to be formatted as JSON, XML, or other specified formats.

Send API Request: Use an HTTP client library or tool, such as cURL, Postman, Axios, or the fetch API in JavaScript, to send the API request. Ensure that the request method, URL, headers, and body are correctly configured.

Handle Response: Process the API response according to your application's requirements. This may involve parsing the response data, handling errors, and updating the user interface or performing other actions based on the response.

Implement Error Handling: Handle potential errors gracefully by checking for error status codes or error messages in the API response. Implement appropriate error handling logic to handle failures and provide feedback to the user if necessary.

Test API Integration: Test the API integration thoroughly to ensure that it functions as expected under various scenarios. Verify that the correct data is being sent and received, and address any issues that arise during testing.

Monitor API Usage: Monitor your API usage and performance over time, and be prepared to make adjustments as needed based on usage patterns and feedback from users or API providers.

URL

Request Body

Key Type Details Mandatory
lang STRING NO

CURL

curl --location 'https://mail.mawa.om/api/city' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO

CURL

curl --location 'https://mail.mawa.om/api/state' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO

CURL

curl --location 'https://mail.mawa.om/api/property-type' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO

CURL

curl --location 'https://mail.mawa.om/api/amenities' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
page NUMERIC NO
property_for STRING NO
keyword STRING NO
property_type STRING NO
bed STRING NO
bath STRING NO
amenities_id NUMERIC NO
min_area NUMERIC NO
max_area NUMERIC NO
min_price NUMERIC NO
max_price NUMERIC NO
is_featured NUMERIC NO

CURL

curl --location 'https://mail.mawa.om/api/property-list' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'page="1"' \ --form 'property_for=""' \ --form 'keyword=""' \ --form 'property_type=""' \ --form 'user_type=""' \ --form 'bed=""' \ --form 'bath=""' \ --form 'amenities_id=""' \ --form 'min_area=""' \ --form 'max_area=""' \ --form 'min_price=""' \ --form 'max_price=""' \ --form 'location=""' \ --form 'is_featured=""' \ --form 'furnished_type=""'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
property_id NUMERIC YES

CURL

curl --location 'https://mail.mawa.om/api/property-details' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'property_id="PROPERTY_ID"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO

CURL

curl --location 'https://mail.mawa.om/api/professional-category' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
category_id NUMERIC YES

CURL

curl --location 'https://mail.mawa.om/api/professional-sub-category' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'category_id="3"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
category_id NUMERIC NO
page NUMERIC YES
location_id NUMERIC NO
keyword STRING NO
sub_category_id NUMERIC NO

CURL

curl --location 'https://mail.mawa.om/api/professional-list' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'category_id="3"' \ --form 'page="1"' \ --form 'location_id=""' \ --form 'keyword=""' \ --form 'sub_category_id=""'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
professional_id NUMERIC YES

CURL

curl --location 'https://mail.mawa.om/api/professional-details' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'professional_id="202"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
property_id NUMERIC YES
name STRING YES
email STRING YES
phone NUMERIC YES
message STRING YES

CURL

curl --location 'https://mail.mawa.om/api/property-send-inquiry' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'professional_id="202"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.

URL

Request Body

Key Type Details Mandatory
lang STRING NO
professional_id NUMERIC YES
name STRING YES
email STRING YES
phone NUMERIC YES
message STRING YES

CURL

curl --location 'https://mail.mawa.om/api/professional-send-inquiry' \ --header 'Authorization: YOUR_API_KEY_HERE' \ --form 'lang="en"' \ --form 'professional_id="75"' \ --form 'name="Name"' \ --form 'email="email@gmail.com"' \ --form 'phone="1234567890"' \ --form 'message="Message"'


Response

Status Body Description
200 200 means "OK", the request was successful.
400 400 means "Bad Request", there was a client error.
500 500 means "Internal Server Error", there was a server error.