Skip to content
Scrappa Get API key
Aqar API 1 credit/request

Aqar Search API Documentation

GET https://scrappa.co/api/aqar/search

Aqar Search API returns Saudi properties for sale or for rent as JSON, up to 50 per page. Choose listing_type and property_type (apartment, villa, land, floor, building, shop, rest_house, farm, office, warehouse, room), or send a raw category_id. Filter by city, district, price, area, bedrooms, bathrooms, living rooms, street width, building age, furnished state, rent period and keyword, sort by price or area, and page through the results. Every item has the price in SAR, area, rooms, location, photos at three widths, the description in Arabic and English and the advertiser with an id for the agent route.

Filters are never ignored. If Aqar returns an ad that breaks a requested filter, the request fails and is not billed. A page is never labelled as another page: the response carries page, size, from and the real total. Aqar ranking shifts between calls, so an ad can show on two neighbouring pages. Results are available up to position 12000.

Not offered. Sorting by newest or by bedrooms is refused with a 422 error, because Aqar does not honour it. An implausible area value is returned as null. Phone numbers are never returned. Failed requests are not billed.

Aqar Search API Documentation 1 credit/request

Endpoint

Request preview
GET
https://scrappa.co/api/aqar/search
Auth header
x-api-key
Cost
1 credit/request
Response preview
200 OK
{
    "data": {
        "items": [
            {
                "id": 6908541,
                "age": 0,
                "url": "https://sa.aqar.fm/ad/6908541",
                "area": 182,
                "price": {
                    "value": 500000,
                    "currency": "SAR"
                },
                "images": [
                    {
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

This endpoint has no required query parameters.

20 optional filters available.

listing_type string Optional

sale (default) or rent.

Example value example
property_type string Optional

apartment (default), villa, land, floor, building, shop, rest_house, farm, office, warehouse or room. Not every type exists for both sale and rent.

Example value example
category_id integer Optional

Raw Aqar category id, instead of listing_type and property_type.

Example value 1234567890
city_id integer Optional

City id from autocomplete.

Example value 1234567890
district_id integer Optional

District id from autocomplete.

Example value 1234567890
min_price integer Optional

Minimum price in SAR (rent: per rent period).

Example value 10
max_price integer Optional

Maximum price in SAR.

Example value 10
min_area integer Optional

Minimum area in square meters.

Example value 10
max_area integer Optional

Maximum area in square meters.

Example value 10
min_beds integer Optional

Minimum bedrooms.

Example value 10
min_baths integer Optional

Minimum bathrooms.

Example value 10
min_living_rooms integer Optional

Minimum living rooms.

Example value 10
min_street_width integer Optional

Minimum street width in meters.

Example value 10
max_age integer Optional

Maximum building age in years.

Example value 10
furnished boolean Optional

true for furnished, false for unfurnished.

Example value true
rent_period string Optional

monthly or yearly. Rent only.

Example value example
keyword string Optional

Word to find in the ad text, Arabic or English.

Example value running shoes
sort string Optional

price_asc, price_desc, area_asc or area_desc. Default: Aqar ranking.

Example value relevance
page integer Optional

One-based page number (default 1).

Example value 1
size integer Optional

Results per page, 1 to 50 (default 20).

Example value 10

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

data meta success
JSON Response
200 OK
{
    "data": {
        "items": [
            {
                "id": 6908541,
                "age": 0,
                "url": "https://sa.aqar.fm/ad/6908541",
                "area": 182,
                "price": {
                    "value": 500000,
                    "currency": "SAR"
                },
                "images": [
                    {
                        "large": "https://images.aqar.fm/webp/1200x0/props/055115056_1791368464635.jpg",
                        "small": "https://images.aqar.fm/webp/350x0/props/055115056_1791368464635.jpg",
                        "medium": "https://images.aqar.fm/webp/750x0/props/055115056_1791368464635.jpg"
                    }
                ],
                "city_id": 21,
                "bedrooms": 5,
                "location": {
                    "latitude": 24.549226,
                    "longitude": 46.801222
                },
                "bathrooms": 2,
                "furnished": false,
                "published": true,
                "unit_code": null,
                "advertiser": {
                    "id": 5217711,
                    "name": "Test Advertiser",
                    "avatar": null,
                    "rating": null,
                    "paid_member": true
                },
                "created_at": "2026-10-06T22:50:02Z",
                "category_id": 6,
                "description": "\u0644\u0644\u0628\u064a\u0639 \u0641\u064a\u0644\u0627 \u062a\u0627\u0648\u0646 \u0647\u0627\u0648\u0633 \u0639\u0644\u0648\u064a \u0628\u062d\u064a \u0637\u064a\u0628\u0647 \n\u0645\u0633\u0627\u062d\u0647 257\n\u0627\u0644\u0633\u0639\u0631 500\u0627\u0644\u0641 ............\n....\u2026",
                "district_id": 684,
                "meter_price": null,
                "rent_period": null,
                "listing_type": "sale",
                "living_rooms": 2,
                "street_width": null,
                "property_type": "apartment",
                "description_en": "townhouse villa for sale in taybah district\narea: 257\nprice: 500k ............\n....\u2026"
            }
        ],
        "pagination": {
            "from": 0,
            "page": 1,
            "size": 1,
            "total": 3935,
            "total_pages": 3935,
            "has_next_page": true
        },
        "applied_filters": {
            "sort": "price_asc",
            "city_id": 21,
            "min_beds": 3,
            "max_price": 900000,
            "category_id": 6,
            "listing_type": "sale",
            "property_type": "apartment"
        }
    },
    "meta": {
        "billable": true,
        "endpoint_family": "search"
    },
    "success": true
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

422

Validation Error

A required parameter or a range is invalid. This response is not billable.

{
    "errors": {
        "sort": [
            "Use one of: price_asc, price_desc, area_asc, area_desc. Sorting by newest or by bedrooms is not supported."
        ]
    },
    "message": "The request validation failed"
}
503

Upstream Unavailable

Aqar could not be reached or returned data that does not match the request. This response is not billable and is retryable.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "search"
    },
    "error": {
        "code": "UPSTREAM_UNAVAILABLE",
        "message": "Aqar could not be reached. Please retry shortly."
    },
    "success": false
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.