Welcome to the Aqarystate API Documentation
Reference the available endpoints, request formats, and live responses for the Aqarystate API.
Reference the available endpoints, request formats, and live responses for the Aqarystate API.
Login once, then all Try It requests will send Authorization automatically.
Profile, visitor channel, and password recovery endpoints.
GET user/profile Returns the current user profile or another user profile by user_id.[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Profile retrieved successfully",
"data": {
"user": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| user_id | int | Optional target user ID |
| HTTP Code | Reason |
|---|---|
| 401 | Unauthorized |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Profile updated successfully",
"data": {
"user": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| firstname | string | First name |
| lastname | string | Last name |
| string | ||
| phone | string | Phone |
| password | string | New password |
| old_password | string | Current password |
| HTTP Code | Reason |
|---|---|
| 400 | Validation or uniqueness error |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Visitor channel updated.",
"data": {
"status": "bool"
}
}
| Parameter | Type | Description |
|---|---|---|
| os | string | Visitor OS |
| channel | string | New channel |
| old_channel | string | Previous channel |
| HTTP Code | Reason |
|---|---|
| 400 | Invalid payload |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Password reset code sent.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| string | User email |
| HTTP Code | Reason |
|---|---|
| 400 | Email is not registered or rate limited |
Admin-only estate moderation and search history endpoints.
POST admin/estate_api/forceDeleteEstate{
"estate_id": 49
}
{
"estate_id": 49
}
{
"page_number": 1,
"limit": 20,
"vistor_data": "flat"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| vistor_data | string | Search term over stored history payload |
| HTTP Code | Reason |
|---|
Admin dashboard metrics and system info management.
GET admin/home_api/getData{
"title": "Aqary State",
"description": "Updated home description",
"keywords": "real estate,gaza",
"facebook_url": "https://facebook.com/example",
"is_app_open": 1,
"is_website_open": 1
}
| Parameter | Type | Description |
|---|---|---|
| title | string | System title |
| description | string | System description |
| keywords | string | SEO keywords |
| facebook_url | string | Facebook URL |
| is_app_open | int | 1 or 0 |
| is_website_open | int | 1 or 0 |
| HTTP Code | Reason |
|---|
Admin aliases over the current notifications service. The old CI3 admin notification controller was empty, so this layer reuses the existing notification implementation under admin routes.
GET admin/notification_api/getUnSeenCount{
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"normal_notification": "{\"title\":\"Test\",\"message\":\"Hello\",\"url\":\"https://example.com\",\"image\":\"icon.png\",\"os\":\"all\"}"
}
| Parameter | Type | Description |
|---|---|---|
| normal_notification | string | Legacy JSON payload |
| HTTP Code | Reason |
|---|
{
"estate_notification": "{\"title\":\"Estate update\",\"message\":\"Estate changed\",\"estate_id\":49,\"label\":\"estate_update\",\"user_id\":7}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_notification | string | Legacy JSON payload |
| HTTP Code | Reason |
|---|
{
"estate_notification": "{\"title\":\"Estate update\",\"message\":\"Estate changed\",\"estate_id\":49,\"label\":\"estate_update\",\"visitor_id\":1}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_notification | string | Legacy JSON payload |
| HTTP Code | Reason |
|---|
Admin-only user management endpoints, with broker ratio support and legacy-compatible shapes.
GET admin/user_api/getUser{
"user_id": 7
}
{
"page_number": 1,
"limit": 10,
"word": "hazem",
"user_group_id": 3,
"is_trustworthy": 1,
"order_by": "id",
"order_type": "DESC"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| word | string | Search keyword |
| user_group_id | int | Legacy role filter |
| is_trustworthy | int | Trust flag |
| order_by | string | Order column |
| order_type | string | ASC or DESC |
| HTTP Code | Reason |
|---|
{
"user": "{\"email\":\"demo@example.com\",\"username\":\"demo\",\"firstname\":\"Demo\",\"lastname\":\"User\",\"password\":\"demo123\",\"phone\":\"0590000000\",\"city_id\":14,\"role_id\":3,\"rent_ratio\":0,\"sale_ratio\":0,\"rent_amount\":0,\"sale_amount\":0}",
"image": ""
}
| Parameter | Type | Description |
|---|---|---|
| user | string | Legacy JSON string |
| image | file | Optional profile image |
| HTTP Code | Reason |
|---|
{
"user_id": 7,
"email": "updated@example.com",
"username": "updated-user",
"firstname": "Updated",
"lastname": "Name",
"phone": "0590000001",
"password": "newpass123",
"role_id": 3,
"status": 1,
"is_trustworthy": 1,
"rent_ratio": 5,
"sale_ratio": 2,
"rent_amount": 0,
"sale_amount": 0,
"image": ""
}
| Parameter | Type | Description |
|---|---|---|
| user_id | int | User ID |
| string | ||
| username | string | Username |
| firstname | string | First name |
| lastname | string | Last name |
| phone | string | Phone |
| password | string | Optional new password |
| role_id | int | 1 admin, 2 user, 3 broker |
| status | int | User status |
| is_trustworthy | int | Trust flag |
| rent_ratio | number | Broker rent ratio |
| sale_ratio | number | Broker sale ratio |
| rent_amount | number | Broker rent amount |
| sale_amount | number | Broker sale amount |
| image | file | Optional profile image |
| HTTP Code | Reason |
|---|
{
"user_id": 7
}
Handles user authentication and access tokens
POST auth/login Authenticates the user and returns an access token.{
"email": "user@example.com",
"password": "secret123"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Login successful",
"data": {
"token": "string",
"user_id": "int",
"user_group_id": "int"
}
}
{
"status": "error",
"code": 400,
"message": "All fields are required"
}
{
"status": "error",
"code": 401,
"message": "Invalid credentials"
}
| Parameter | Type | Description |
|---|---|---|
| string | User's email | |
| password | string | User's password |
| HTTP Code | Reason |
|---|---|
| 400 | All fields are required |
| 401 | Invalid credentials |
{
"email": "user@example.com",
"password": "secret123"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Login successful",
"data": {
"token": "string",
"user_id": "int",
"user_group_id": "int"
}
}
{
"status": "error",
"code": 400,
"message": "All fields are required"
}
{
"status": "error",
"code": 401,
"message": "Invalid credentials"
}
| Parameter | Type | Description |
|---|---|---|
| string | User's email or username | |
| password | string | User's password |
| HTTP Code | Reason |
|---|---|
| 400 | All fields are required |
| 401 | Invalid credentials |
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Logged out successfully"
}
| Parameter | Type | Description |
|---|
| HTTP Code | Reason |
|---|---|
| 401 | Unauthorized: Missing or invalid token |
Legacy-compatible blog management endpoints.
GET blog_api/getAllBlog Admin listing for blogs.{
"page_number": 1,
"limit": 10,
"word": "test"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| word | string | Search keyword |
| HTTP Code | Reason |
|---|
{
"title": "Test blog",
"text": "Test content",
"tags": "tag1,tag2",
"blog": "{\"title\":\"Test\",\"text\":\"Body\",\"tags\":\"tag1,tag2\"}",
"images": ""
}
| Parameter | Type | Description |
|---|---|---|
| title | string | Blog title |
| text | string | Blog body |
| tags | string | Comma-separated tags |
| blog | string | Optional legacy JSON object as string |
| images | file | One or more blog images |
| HTTP Code | Reason |
|---|
{
"blog_id": 1,
"images": ""
}
| Parameter | Type | Description |
|---|---|---|
| blog_id | int | Blog ID |
| images | file | One or more images |
| HTTP Code | Reason |
|---|
{
"blog_id": 1,
"image_name": "example.png"
}
| Parameter | Type | Description |
|---|---|---|
| blog_id | int | Blog ID |
| image_name | string | Stored image filename |
| HTTP Code | Reason |
|---|
{
"blog_id": 1,
"title": "Updated title",
"text": "Updated content",
"tags": "tag3,tag4",
"status": 1,
"blog": "{\"blog_id\":1,\"title\":\"Updated\"}"
}
| Parameter | Type | Description |
|---|---|---|
| blog_id | int | Blog ID |
| title | string | New title |
| text | string | New body |
| tags | string | New tags |
| status | int | Status flag |
| blog | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"word": "test"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| word | string | Search keyword |
| HTTP Code | Reason |
|---|
{
"blog_id": 1
}
{
"blog_url_title": "i_am_test"
}
| Parameter | Type | Description |
|---|---|---|
| blog_url_title | string | Blog slug |
| HTTP Code | Reason |
|---|
{
"blog_id": 1
}
Legacy-compatible blog comments endpoints.
GET blogcomments_api/getAllBlogComments Admin listing of comments for one blog.{
"page_number": 1,
"limit": 10,
"blog_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| blog_id | int | Blog ID |
| HTTP Code | Reason |
|---|
{
"blog_id": 1,
"comment": "Test comment",
"blogcomments": "{\"blog_id\":1,\"comment\":\"Test comment\"}"
}
| Parameter | Type | Description |
|---|---|---|
| blog_id | int | Blog ID |
| comment | string | Comment text |
| blogcomments | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
{
"blogcomments_id": 1,
"comment": "Updated comment",
"blogcomments": "{\"blogcomments_id\":1,\"comment\":\"Updated\"}"
}
| Parameter | Type | Description |
|---|---|---|
| blogcomments_id | int | Comment ID |
| comment | string | Comment text |
| blogcomments | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
{
"blogcomments_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| blogcomments_id | int | Comment ID |
| HTTP Code | Reason |
|---|
{
"blogcomments_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| blogcomments_id | int | Comment ID |
| HTTP Code | Reason |
|---|
Legacy-compatible booking/reservation endpoints.
POST booking_api/makeReservation Creates a reservation request.{
"estate_id": 13923,
"dates": "[{\"date\":\"2030-06-18\",\"from_time\":\"13:10:00\",\"to_time\":\"14:10:00\"}]",
"reservation": "{\"estate_id\":13923,\"dates\":[{\"date\":\"2030-06-18\",\"from_time\":\"13:10:00\",\"to_time\":\"14:10:00\"}]}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| dates | string | Array of date slots as JSON string |
| reservation | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"status_id": 1,
"date": "2030-05-26",
"end_date": "2030-05-30"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| status_id | int | Booking status filter |
| date | string | Start date |
| end_date | string | End date |
| HTTP Code | Reason |
|---|
{
"estate_booking_id": 1,
"status_id": 2,
"reject_reason": "Time conflict",
"reservation": "{\"estate_booking_id\":1,\"status_id\":2}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_booking_id | int | Booking ID |
| status_id | int | New status ID |
| reject_reason | string | Optional rejection reason |
| reservation | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
Legacy-compatible broker location endpoints.
GET brokerlocation_api/getBrokerLocation{
"broker_location_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| broker_location_id | int | Broker location ID |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"location_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| location_id | int | Location ID |
| HTTP Code | Reason |
|---|
{
"broker_location_id": 1,
"location_id": 2
}
| Parameter | Type | Description |
|---|---|---|
| broker_location_id | int | Broker location ID |
| location_id | int | Replacement location ID |
| HTTP Code | Reason |
|---|
{
"broker_location_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| broker_location_id | int | Broker location ID |
| HTTP Code | Reason |
|---|
Legacy-compatible broker customers and needs endpoints.
GET brokerusermanagement_api/getAllBrokerUser{
"page_number": 1,
"limit": 10,
"word": "059"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| word | string | Search by name or phone |
| HTTP Code | Reason |
|---|
{
"broker_user_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_id | int | Broker user ID |
| HTTP Code | Reason |
|---|
{
"name": "Test Client",
"phone": "0592603248"
}
| Parameter | Type | Description |
|---|---|---|
| name | string | Customer name |
| phone | string | Customer phone |
| HTTP Code | Reason |
|---|
{
"broker_user_id": 1,
"name": "Updated Client",
"phone": "0592603249"
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_id | int | Broker user ID |
| name | string | Customer name |
| phone | string | Customer phone |
| HTTP Code | Reason |
|---|
{
"broker_user_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_id | int | Broker user ID |
| HTTP Code | Reason |
|---|
{
"broker_user_id": 1,
"estate_type": "flat",
"estate_min_price": 10000,
"estate_max_price": 20000,
"estate_min_space": 80,
"estate_max_space": 150,
"estate_currency_id": 1,
"estate_location_id": 1,
"estate_mode": "sale"
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_id | int | Broker user ID |
| estate_type | string | house|land|flat|store|room|chalet |
| estate_min_price | float | Minimum price |
| estate_max_price | float | Maximum price |
| estate_min_space | float | Minimum space |
| estate_max_space | float | Maximum space |
| estate_currency_id | int | Currency ID |
| estate_location_id | int | Location ID |
| estate_mode | string | rent|sale |
| HTTP Code | Reason |
|---|
{
"broker_user_need_id": 1,
"estate_type": "house",
"estate_min_price": 12000,
"estate_max_price": 25000,
"estate_min_space": 90,
"estate_max_space": 170,
"estate_currency_id": 1,
"estate_location_id": 1,
"estate_mode": "rent"
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_need_id | int | Need ID |
| estate_type | string | house|land|flat|store|room|chalet |
| estate_min_price | float | Minimum price |
| estate_max_price | float | Maximum price |
| estate_min_space | float | Minimum space |
| estate_max_space | float | Maximum space |
| estate_currency_id | int | Currency ID |
| estate_location_id | int | Location ID |
| estate_mode | string | rent|sale |
| HTTP Code | Reason |
|---|
{
"broker_user_need_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_need_id | int | Need ID |
| HTTP Code | Reason |
|---|
{
"user_need_id": 1
}
{
"broker_user_id": 1,
"page_number": 1,
"limit": 10,
"word": "059"
}
| Parameter | Type | Description |
|---|---|---|
| broker_user_id | int | Filter by broker user |
| page_number | int | Page number |
| limit | int | Rows per page |
| word | string | Search by name or phone |
| HTTP Code | Reason |
|---|
Email, SMS, and SMS group management endpoints.
GET emails Returns logged outgoing emails.[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Emails retrieved successfully.",
"data": {
"emails": "array"
}
}
| Parameter | Type | Description |
|---|---|---|
| page | int | Page number |
| perPage | int | Rows per page |
| string | Recipient filter |
| HTTP Code | Reason |
|---|---|
| 403 | Forbidden |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Emails sent successfully.",
"data": {
"sent": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| to_email | string | Comma-separated recipients |
| title | string | Subject |
| message | string | Message |
| HTTP Code | Reason |
|---|---|
| 400 | Validation error |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS sent successfully.",
"data": {
"sent": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| to_phone_number | string | Comma-separated phones |
| message | string | SMS body |
| HTTP Code | Reason |
|---|---|
| 400 | Validation or provider error |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS groups retrieved successfully.",
"data": {
"sms_groups": "array"
}
}
| Parameter | Type | Description |
|---|---|---|
| word | string | Name filter |
| HTTP Code | Reason |
|---|---|
| 403 | Forbidden |
Legacy-compatible contacts endpoints.
GET contacts_api/getContacts Admin listing for contacts.{
"page_number": 1,
"limit": 10,
"id": 1,
"name": "test",
"phone": "059",
"email": "test@example.com"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| id | int | Specific contact ID |
| name | string | Name filter |
| phone | string | Phone filter |
| string | Email filter |
| HTTP Code | Reason |
|---|
{
"name": "Test",
"phone": "0599999999",
"email": "test@test.com",
"address": "Gaza",
"note": "Imported",
"sms_groups": "[1,2]",
"contact": "{\"name\":\"Test\",\"phone\":\"0599999999\",\"email\":\"test@test.com\",\"sms_groups\":[1,2]}"
}
| Parameter | Type | Description |
|---|---|---|
| name | string | Contact name |
| phone | string | Phone number |
| string | ||
| address | string | Address |
| note | string | Note |
| sms_groups | string | Group IDs as JSON string array |
| contact | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
{
"file": "",
"group_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| file | file | CSV or XLSX file |
| group_id | int | SMS group ID |
| HTTP Code | Reason |
|---|
{
"id": 1,
"name": "Updated",
"phone": "0599999999",
"email": "updated@test.com",
"address": "Ramallah",
"note": "Updated note",
"contact": "{\"id\":1,\"name\":\"Updated\"}"
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Contact ID |
| name | string | Contact name |
| phone | string | Phone number |
| string | ||
| address | string | Address |
| note | string | Note |
| contact | string | Optional legacy JSON object as string |
| HTTP Code | Reason |
|---|
Legacy-compatible contact us endpoints.
POST contactus_api/ContactUs Public endpoint for sending a contact-us message.{
"type": "general",
"email": "test@test.com",
"name": "test",
"phone": "0599999999",
"message": "test"
}
| Parameter | Type | Description |
|---|---|---|
| type | string | general, broker_request, or special_offers |
| string | Sender email | |
| name | string | Sender name |
| phone | string | Sender phone |
| message | string | Message text |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"type": "general"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| type | string | Message type filter |
| HTTP Code | Reason |
|---|
{
"contact_id": 1
}
{
"type": "general"
}
{
"contactus_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| contactus_id | int | Message ID |
| HTTP Code | Reason |
|---|
Legacy-compatible email log and send endpoints.
GET email_api/getEmails Returns paginated email logs.{
"page": 1,
"perPage": 10,
"id": 1,
"email": "hazem.hamadaqa@gmail.com",
"start_date": "2020-04-16",
"end_date": "2020-05-06"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Emails retrieved successfully.",
"data": {
"emails": "array",
"pager": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| page | int | Page number |
| perPage | int | Rows per page |
| id | int | Specific email log ID |
| string | Recipient filter | |
| start_date | string | Start date filter |
| end_date | string | End date filter |
| HTTP Code | Reason |
|---|
{
"to_email": "hazem.hamadaqa@gmail.com,test@example.com",
"title": "System notification",
"message": "Test email body"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Emails sent successfully.",
"data": {
"sent": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| to_email | string | Comma-separated recipient emails |
| title | string | Email subject |
| message | string | Email body |
| HTTP Code | Reason |
|---|
Legacy-compatible admin comments on estates.
GET estate_admin_comment_api/getAllComment{
"id": 1,
"page_number": 1,
"limit": 20
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Optional comment ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"estate_id": 1648,
"page_number": 1,
"limit": 20
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"estate_id\":1648,\"comment\":\"Admin note\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with estate_id and comment |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"id\":1,\"comment\":\"Updated admin note\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with id and comment |
| HTTP Code | Reason |
|---|
{
"estate_admin_comment_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| estate_admin_comment_id | int | Admin comment ID |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"id\":1}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with id |
| HTTP Code | Reason |
|---|
Legacy-compatible estate endpoints for search, favorites, CRUD, and tracking.
GET estate_api/getEstateById{
"estate_id": 49,
"channel": "visitor-channel-1"
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| channel | string | Visitor channel for favorite state |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"estate_type": "flat",
"estate_mode": "rent",
"country_id": 1,
"state_id": 1,
"cities_id": 14,
"location_id": 24,
"min_price": 100,
"max_price": 5000,
"space_min": 80,
"space_max": 400,
"currency_id": 1,
"phone_number": "059",
"is_have_image": 1,
"is_special_offer": 0,
"flatEstateSearch": "{\"room_number\":3,\"bathroom_number\":2}",
"roomEstateSearch": "{\"is_furnished\":1}",
"houstEstateSearch": "{\"floor_number\":2}",
"chaletEstateSearch": "{\"is_have_wifi\":1}",
"channel": "visitor-channel-1"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| estate_type | string | flat|house|room|chalet|land |
| estate_mode | string | sale|rent |
| country_id | int | Country filter |
| state_id | int | State filter |
| cities_id | int | City filter |
| location_id | int | Location filter |
| min_price | number | Minimum price |
| max_price | number | Maximum price |
| space_min | int | Minimum space |
| space_max | int | Maximum space |
| currency_id | int | Currency ID |
| phone_number | string | Owner phone search |
| is_have_image | int | 1 for estates with images |
| is_special_offer | int | Special offer filter |
| flatEstateSearch | string | Optional JSON child filter |
| roomEstateSearch | string | Optional JSON child filter |
| houstEstateSearch | string | Optional JSON child filter |
| chaletEstateSearch | string | Optional JSON child filter |
| channel | string | Visitor channel for favorite state |
| HTTP Code | Reason |
|---|
{
"estate_type": "flat",
"estate_mode": "rent",
"country_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| estate_type | string | Estate type |
| estate_mode | string | Estate mode |
| country_id | int | Country filter |
| HTTP Code | Reason |
|---|
{
"estate_id": 49,
"phone": "0599013319",
"name": "Hazem"
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| phone | string | Viewed phone number |
| name | string | Viewer name |
| HTTP Code | Reason |
|---|
{
"estate_id": 49
}
{
"estate_id": 49,
"channel": "visitor-channel-1"
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| channel | string | Visitor channel for guest favorites |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"channel": "visitor-channel-1"
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| channel | string | Visitor channel for guest favorites |
| HTTP Code | Reason |
|---|
{
"estate": "{\"estate_type\":\"flat\",\"title\":\"Test Estate\",\"description\":\"Test description\",\"price\":500,\"currency_id\":1,\"location_id\":24,\"estate_mode\":\"rent\",\"space\":120,\"ownerPhoneNumber\":\"0592603248\",\"flat_estate\":{\"room_number\":3,\"bathroom_number\":2}}",
"images": "",
"video": ""
}
| Parameter | Type | Description |
|---|---|---|
| estate | string | Legacy estate JSON object |
| images | file | Optional one or more images |
| video | file | Optional video file |
| HTTP Code | Reason |
|---|
{
"estate": "{\"estate_type\":\"flat\",\"title\":\"Test Estate\",\"description\":\"Test description\",\"price\":500,\"currency_id\":1,\"location_id\":24,\"estate_mode\":\"rent\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate | string | Legacy estate JSON object |
| HTTP Code | Reason |
|---|
{
"estate": "{\"estate_id\":49,\"title\":\"Updated Estate\",\"description\":\"Updated description\",\"deleted_images\":\"old-image.jpg\",\"flat_estate\":{\"room_number\":4}}",
"video": ""
}
| Parameter | Type | Description |
|---|---|---|
| estate | string | Legacy estate JSON object with estate_id/id |
| video | file | Optional replacement video |
| HTTP Code | Reason |
|---|
{
"estate_id": 49,
"images": ""
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| images | file | One or more images |
| HTTP Code | Reason |
|---|
{
"estate_id": 49,
"image_name": "example.jpg"
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| image_name | string | Stored image name |
| HTTP Code | Reason |
|---|
{
"estate_id": 49,
"status_id": 1,
"date": "2026-03-01",
"end_date": "2026-03-31",
"page_number": 1,
"limit": 20
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| status_id | int | Optional booking status |
| date | string | From date |
| end_date | string | To date |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"images": ""
}
| Parameter | Type | Description |
|---|---|---|
| images | file | One or more images |
| HTTP Code | Reason |
|---|
Legacy-compatible member comments on estates.
GET estatecomment_api/getAllComment{
"id": 2,
"page_number": 1,
"limit": 20
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Optional comment ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"estate_id": 419,
"page_number": 1,
"limit": 20
}
| Parameter | Type | Description |
|---|---|---|
| estate_id | int | Estate ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"estate_id\":419,\"comment\":\"Nice estate\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with estate_id and comment |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"estate_id\":419,\"comment_id\":2,\"comment\":\"Reply text\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with estate_id, comment_id, and comment |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"id\":2,\"comment\":\"Updated text\"}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with id and comment |
| HTTP Code | Reason |
|---|
{
"estate_comment_id": 2
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment_id | int | Comment ID |
| HTTP Code | Reason |
|---|
{
"estate_comment": "{\"id\":2}"
}
| Parameter | Type | Description |
|---|---|---|
| estate_comment | string | JSON string with id |
| HTTP Code | Reason |
|---|
Legacy-compatible location hierarchy endpoints.
GET location_api/getAllCountry{
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"country_id": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| country_id | int | Country ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"state_id": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| state_id | int | State ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"city_id": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| city_id | int | City ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"country_id": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| country_id | int | Country ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"location_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| location_id | int | Location ID |
| HTTP Code | Reason |
|---|
{
"city_id": 1
}
{
"country_id": 1
}
{
"country_id": 1
}
{
"country_id": 1,
"filter": "Ram",
"language": "EN"
}
| Parameter | Type | Description |
|---|---|---|
| country_id | int | Country ID |
| filter | string | Search term |
| language | string | AR or EN |
| HTTP Code | Reason |
|---|
{
"location_id": 1,
"name": "New Area",
"description": "Updated description",
"latitude": 31.89999999999999857891452847979962825775146484375,
"longitude": 35.2000000000000028421709430404007434844970703125
}
| Parameter | Type | Description |
|---|---|---|
| location_id | int | Location ID |
| name | string | Location name |
| description | string | Description |
| latitude | float | Latitude |
| longitude | float | Longitude |
| HTTP Code | Reason |
|---|
{
"cities_id": 1,
"name": "New Area",
"description": "Test",
"latitude": 31.89999999999999857891452847979962825775146484375,
"longitude": 35.2000000000000028421709430404007434844970703125
}
| Parameter | Type | Description |
|---|---|---|
| cities_id | int | City ID |
| name | string | Location name |
| description | string | Description |
| latitude | float | Latitude |
| longitude | float | Longitude |
| HTTP Code | Reason |
|---|
{
"city_id": 1,
"name": "New City",
"partner_name": "Partner",
"partner_phone": "0590000000",
"latitude": 31.89999999999999857891452847979962825775146484375,
"longitude": 35.2000000000000028421709430404007434844970703125
}
| Parameter | Type | Description |
|---|---|---|
| city_id | int | City ID |
| name | string | City name |
| partner_name | string | Partner name |
| partner_phone | string | Partner phone |
| latitude | float | Latitude |
| longitude | float | Longitude |
| HTTP Code | Reason |
|---|
{
"state_id": 1,
"name": "New City",
"partner_name": "Partner",
"partner_phone": "0590000000",
"latitude": 31.89999999999999857891452847979962825775146484375,
"longitude": 35.2000000000000028421709430404007434844970703125
}
| Parameter | Type | Description |
|---|---|---|
| state_id | int | State ID |
| name | string | City name |
| partner_name | string | Partner name |
| partner_phone | string | Partner phone |
| latitude | float | Latitude |
| longitude | float | Longitude |
| HTTP Code | Reason |
|---|
Legacy-compatible notification endpoints for users and visitors.
GET notification_api/getUnSeenCount Returns the unseen notification count for the current user or a visitor channel.{
"channel": "visitor-channel"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Notification count retrieved.",
"data": {
"count": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10,
"channel": "visitor-channel"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Notifications retrieved successfully.",
"data": {
"notifications": "array"
}
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|
{
"title": "New update",
"message": "A new update is available",
"user_id": 7,
"user_group_id": 1
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Normal notification sent successfully.",
"data": {
"created": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| title | string | Notification title |
| message | string | Notification message |
| user_id | int | Optional target user ID |
| user_group_id | int | Optional target group ID |
| HTTP Code | Reason |
|---|
{
"title": "Estate update",
"message": "Estate price changed",
"user_id": 7,
"estate_id": 15
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Estate notification sent successfully.",
"data": {
"notification_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| title | string | Notification title |
| message | string | Notification message |
| user_id | int | Target user ID |
| estate_id | int | Related estate ID |
| HTTP Code | Reason |
|---|
{
"title": "Estate update",
"message": "Estate price changed",
"channel": "visitor-channel",
"estate_id": 15
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Visitor estate notification sent successfully.",
"data": {
"notification_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| title | string | Notification title |
| message | string | Notification message |
| channel | string | Visitor channel |
| estate_id | int | Related estate ID |
| HTTP Code | Reason |
|---|
{
"channel": "visitor-channel"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Notifications marked as seen.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|
{
"normal_notification_id": 1
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Normal notification marked as seen.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| normal_notification_id | int | Notification ID |
| HTTP Code | Reason |
|---|
{
"estate_notification_id": 1,
"channel": "visitor-channel"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Estate notification marked as seen.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| estate_notification_id | int | Notification ID |
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|
User and visitor notifications.
GET notifications/unseen-count Returns the unseen notification count for the current user or a visitor channel.[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Notification count retrieved.",
"data": {
"count": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|---|
| 400 | Invalid request |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Notifications retrieved successfully.",
"data": {
"notifications": "array"
}
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|---|
| 400 | Invalid request |
[]
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Estate notification marked as seen.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| estate_notification_id | int | Notification ID |
| channel | string | Visitor channel fallback |
| HTTP Code | Reason |
|---|---|
| 400 | Invalid request |
Legacy-compatible SMS log and send endpoints.
GET sms_api/getMessages Returns paginated SMS logs.{
"page": 1,
"perPage": 10,
"id": 1,
"phone_number": "592603248",
"start_date": "2020-04-16",
"end_date": "2020-05-06"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS messages retrieved successfully.",
"data": {
"messages": "array",
"pager": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| page | int | Page number |
| perPage | int | Rows per page |
| id | int | Specific SMS log ID |
| phone_number | string | Recipient phone filter |
| start_date | string | Start date filter |
| end_date | string | End date filter |
| HTTP Code | Reason |
|---|
{
"to_phone_number": "972599999999,972598888888",
"message": "Test SMS body"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS sent successfully.",
"data": {
"sent": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| to_phone_number | string | Comma-separated phone numbers |
| message | string | SMS text |
| HTTP Code | Reason |
|---|
Legacy-compatible SMS group management endpoints.
GET sms_group_api/getSmsGroups Returns paginated SMS groups and supports lightweight filtering.{
"page": 1,
"perPage": 10,
"id": 1,
"word": "test",
"is_get_data": "0"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS groups retrieved successfully.",
"data": {
"sms_groups": "array",
"pager": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| page | int | Page number |
| perPage | int | Rows per page |
| id | int | Specific group ID |
| word | string | Partial group name filter |
| is_get_data | boolean | Return extended data set |
| HTTP Code | Reason |
|---|
{
"name": "VIP clients",
"contacts": "[{\\\"phone_number\\\":\\\"972599999999\\\"}]"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS group created successfully.",
"data": {
"group_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| name | string | Group name |
| contacts | json|string | Optional contact array or comma-separated phones |
| HTTP Code | Reason |
|---|
{
"id": 1,
"name": "VIP clients updated",
"contacts": "[{\\\"phone_number\\\":\\\"972598888888\\\"}]"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS group updated successfully.",
"data": {
"group_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Group ID |
| name | string | Updated group name |
| contacts | json|string | Optional replacement contact array or phones |
| HTTP Code | Reason |
|---|
{
"sms_group_id": "1,2",
"message": "Group broadcast body"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "SMS sent successfully.",
"data": {
"sent": "int",
"group_ids": "array"
}
}
| Parameter | Type | Description |
|---|---|---|
| sms_group_id | string | Single group ID or comma-separated group IDs |
| message | string | SMS text |
| HTTP Code | Reason |
|---|
Legacy-compatible suggestions endpoints.
POST suggestions_api/suggest{
"phone": "0592603248",
"email": "test@example.com",
"name": "Hazem",
"message": "Please add feature X"
}
| Parameter | Type | Description |
|---|---|---|
| phone | string | Phone number |
| string | ||
| name | string | Name |
| message | string | Suggestion text |
| HTTP Code | Reason |
|---|
{
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"suggestions_id": 1
}
| Parameter | Type | Description |
|---|---|---|
| suggestions_id | int | Suggestion ID |
| HTTP Code | Reason |
|---|
Legacy-compatible ticket comments endpoints.
GET ticket_comments_api/getTicketComments{
"id": 1,
"ticket_id": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Comment ID |
| ticket_id | int | Ticket ID |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"ticket_comment": "{\"ticket_id\":1,\"comment\":\"test\"}"
}
| Parameter | Type | Description |
|---|---|---|
| ticket_comment | string | JSON string with ticket_id and comment |
| HTTP Code | Reason |
|---|
{
"ticket_comment": "{\"id\":1,\"comment\":\"updated\",\"is_deleted\":0}"
}
| Parameter | Type | Description |
|---|---|---|
| ticket_comment | string | JSON string with id/comment/is_deleted |
| HTTP Code | Reason |
|---|
Legacy-compatible support tickets endpoints.
GET tickets_api/getTickets{
"id": 1,
"client_name": "hazem",
"phone": "059",
"estate_number": "5632",
"estate_ownerPhoneNumber": "059",
"status": "pending",
"source": "call",
"is_get_data": 1,
"page_number": 1,
"limit": 10
}
| Parameter | Type | Description |
|---|---|---|
| id | int | Ticket ID |
| client_name | string | Client name |
| phone | string | Client phone search |
| estate_number | string | Estate number |
| estate_ownerPhoneNumber | string | Owner phone |
| status | string | pending|completed|archive |
| source | string | call|facebook|instagram|other |
| is_get_data | int | Attach comments |
| page_number | int | Page number |
| limit | int | Rows per page |
| HTTP Code | Reason |
|---|
{
"ticket": "{\"client_name\":\"hazem\",\"client_phone1\":\"0592603248\",\"client_phone2\":\"0569603248\",\"client_address\":\"test\",\"estate_number\":\"5632\",\"source\":\"call\"}"
}
| Parameter | Type | Description |
|---|---|---|
| ticket | string | JSON string for ticket payload |
| HTTP Code | Reason |
|---|
{
"ticket": "{\"id\":1,\"client_name\":\"hazem\",\"client_phone1\":\"0592603248\",\"status\":\"completed\",\"source\":\"call\"}"
}
| Parameter | Type | Description |
|---|---|---|
| ticket | string | JSON string for ticket update payload |
| HTTP Code | Reason |
|---|
Legacy-compatible user endpoints migrated from the old CI3 project.
GET users Retrieves a paginated list of users.{
"page": 1,
"perPage": 10,
"user_group_id": 1,
"search": "hazem"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Users retrieved successfully",
"data": {
"page": "int",
"perPage": "int",
"totalPages": "int",
"total": "int",
"users": [
{
"id": "int",
"username": "string",
"email": "string"
}
]
}
}
| Parameter | Type | Description |
|---|---|---|
| page | int | Page number to retrieve |
| perPage | int | Number of results per page |
| user_group_id | int | Filter by user group ID |
| search | string | Search by username or email |
| HTTP Code | Reason |
|---|
{
"id": 7
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "User retrieved successfully",
"data": {
"id": "int",
"name": "string",
"username": "string",
"email": "string",
"user_group_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| id | int | The ID of the user to retrieve |
| HTTP Code | Reason |
|---|
{
"username": "newuser123",
"email": "newuser@example.com",
"password": "securepassword",
"first_name": "New",
"last_name": "User",
"user_group_id": 2,
"active": 1
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "User added successfully",
"data": {
"user_id": "int"
}
}
| Parameter | Type | Description |
|---|---|---|
| username | string | Unique username |
| string | User email | |
| password | string | User password |
| first_name | string | First name |
| last_name | string | Last name |
| user_group_id | int | Group ID |
| active | int | 1 active, 0 inactive |
| HTTP Code | Reason |
|---|
{
"username": "testuser",
"firstname": "Hazem",
"lastname": "Hamadaqa",
"email": "hazem@example.com",
"phone_intro": "970",
"phone": "0599123456",
"password": "Hazem@123",
"role_id": 2,
"user_group_id": 2,
"city_id": 1,
"image": ""
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "User registered successfully.",
"data": {
"token": "string",
"user": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| username | string | Legacy username. If omitted, the system derives one from email. |
| firstname | string | First name |
| lastname | string | Last name |
| string | Email address | |
| phone_intro | string | Legacy phone prefix. Not required by the migrated endpoint. |
| phone | string | Phone number |
| password | string | Password |
| role_id | int | Legacy role ID: 2 user, 3 broker, 1 admin |
| user_group_id | int | Alias supported for legacy docs requests |
| city_id | int | Optional city ID |
| image | string | Optional profile image payload or path |
| HTTP Code | Reason |
|---|
{
"user_id": 7
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Profile retrieved successfully",
"data": {
"user": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| user_id | int | Optional target user ID |
| HTTP Code | Reason |
|---|
{
"firstname": "Hazem",
"lastname": "Hamadaqa",
"email": "hazem@example.com",
"phone_intro": "970",
"phone": "599123456",
"password": "Hazem@123",
"old_password": "OldPass123"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Profile updated successfully",
"data": {
"user": "object"
}
}
| Parameter | Type | Description |
|---|---|---|
| firstname | string | First name |
| lastname | string | Last name |
| string | Email address | |
| phone_intro | string | Phone prefix |
| phone | string | Phone number |
| password | string | New password |
| old_password | string | Current password |
| HTTP Code | Reason |
|---|
{
"email": "hazem@example.com"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Password reset code sent.",
"data": []
}
{
"email": "hazem@example.com",
"reset_code": "198821"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Reset code verified.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| string | User email | |
| reset_code | string | Reset code |
| HTTP Code | Reason |
|---|
{
"email": "hazem@example.com",
"reset_code": "198821",
"password": "Hazem@123"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Password updated successfully.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| string | User email | |
| reset_code | string | Reset code |
| password | string | New password |
| HTTP Code | Reason |
|---|
{
"phone_intro": "59",
"phone": "2603248"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Password reset code sent.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| phone_intro | string | Phone prefix |
| phone | string | Phone number |
| HTTP Code | Reason |
|---|
{
"phone_intro": "592",
"phone": "603248",
"reset_code": "198821"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Reset code verified.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| phone_intro | string | Phone prefix |
| phone | string | Phone number |
| reset_code | string | Reset code |
| HTTP Code | Reason |
|---|
{
"phone_intro": "59",
"phone": "2603248",
"reset_code": "198821",
"password": "Hazem@123"
}
Note: Only one of the following responses will be returned per request.
{
"status": "success",
"message": "Password updated successfully.",
"data": []
}
| Parameter | Type | Description |
|---|---|---|
| phone_intro | string | Phone prefix |
| phone | string | Phone number |
| reset_code | string | Reset code |
| password | string | New password |
| HTTP Code | Reason |
|---|