# Mudah.my Property Search API Documentation

<p><strong>Mudah.my Property Search API</strong> returns Malaysian property for sale or rent as JSON. Filter by state, subarea, building, price, bedrooms, bathrooms, built-up size, property type, furnishing and seller, sort by latest or price, and page through the results with 40 listings per page. Each listing carries the title, URL, category, property type, tenure, price in MYR (rent per month), size, rooms, location, building, seller, photos and dates. The response also returns the total result count and the real page. Every returned listing satisfies every requested filter. Mudah.my serves at most 250 pages per search: a later page returns an empty page with <code>depth_limit_reached</code>, never page 1. The furnishing filter is applied by Mudah.my. Search results do not show the furnishing, the listing endpoint does. A valid empty result is a successful, billable response.</p>

- **Documentation:** [https://scrappa.co/docs/mudah-property-api/mudah_property_search](https://scrappa.co/docs/mudah-property-api/mudah_property_search)
- **API group:** Mudah.my Property API
- **Endpoint:** `GET https://scrappa.co/api/mudah-property/v1/search`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `listing_type` | string | No | sale (default) or rent. Example: rent. |
| `category` | string | No | residential (default), all, apartment, house, commercial, land or room (room needs rent). Example: apartment. |
| `region` | integer | No | State id from autocomplete or the reference route. Example: 8 for Selangor. |
| `subarea` | integer | No | Subarea id from autocomplete. Example: 353. |
| `building_id` | string | No | Building UUID from autocomplete or the buildings route. |
| `q` | string | No | Free text keyword, 2 to 100 characters. Example: freehold. |
| `bedrooms` | integer | No | Bedrooms 1 to 5. 5 means 5 or more. Example: 3. |
| `bathrooms` | integer | No | Bathrooms 1 to 5. 5 means 5 or more. Example: 2. |
| `property_type_id` | integer | No | Property type id from the reference route. Example: 1 for condominium. |
| `furnished_id` | integer | No | Rent only. 1 fully, 2 partially, 3 not furnished. Example: 1. |
| `min_price` | integer | No | Minimum price in MYR (rent: per month). Example: 300000. |
| `max_price` | integer | No | Maximum price in MYR (rent: per month). Example: 500000. |
| `min_size` | integer | No | Minimum built-up size in sq.ft. Example: 800. |
| `max_size` | integer | No | Maximum built-up size in sq.ft. Example: 1500. |
| `store` | integer | No | Seller store id. Example: 790734. |
| `user_id` | integer | No | Seller user id. Example: 6690932. |
| `sort` | string | No | latest (default), price_asc or price_desc. Example: price_asc. |
| `page` | integer | No | One-based page number. 40 results per page, up to page 250. Later pages return an empty page with depth_limit_reached. Example: 2. |

## Example response

```json
{
    "data": {
        "listings": [
            {
                "url": "https://www.mudah.my/amara-residence-batu-caves-corner-998sf-new-tiles-kitchen-cabinet-114538958.htm",
                "size": {
                    "unit": "sq.ft.",
                    "value": 998
                },
                "ad_id": 134535435,
                "dates": {
                    "listed_at": "2026-10-26T12:17:32+08:00",
                    "expires_at": "2026-12-27T12:17:32+08:00",
                    "modified_at": "2026-10-26T12:17:32+08:00",
                    "original_listed_at": "2026-10-26T12:17:32+08:00"
                },
                "price": {
                    "label": "RM 300,000",
                    "amount": 300000,
                    "period": null,
                    "currency": "MYR",
                    "old_price": 330000
                },
                "title": "Amara Residence Batu Caves Corner 998sf New Tiles & Kitchen Cabinet",
                "images": [
                    "https://img.rnudah.com/images/30/3006994698124419625.jpg"
                ],
                "seller": {
                    "name": "John Leong",
                    "type": "agent",
                    "user_id": 3256074,
                    "store_id": 564415,
                    "company_ad": true,
                    "store_verified": true
                },
                "tenure": "Freehold",
                "list_id": 114538958,
                "bedrooms": 3,
                "building": {
                    "id": "2dab87d5-f258-4e22-9182-d1561495095f",
                    "name": "Amara Service Residences"
                },
                "category": {
                    "id": 2020,
                    "name": "Apartment / Condominium"
                },
                "location": {
                    "region": "Selangor",
                    "subarea": "Batu Caves",
                    "region_id": 8,
                    "subarea_id": 281
                },
                "bathrooms": 2,
                "furnished": null,
                "image_count": 6,
                "media_count": 6,
                "listing_type": "sale",
                "property_type": {
                    "id": 5,
                    "name": "Service Residence"
                }
            },
            {
                "url": "https://www.mudah.my/murah-ground-floor-depo-flexi-d-rimba-resort-sek11-kota-damansara-115156368.htm",
                "size": {
                    "unit": "sq.ft.",
                    "value": 1001
                },
                "ad_id": 135231042,
                "dates": {
                    "listed_at": "2026-10-26T12:15:52+08:00",
                    "expires_at": "2026-11-04T09:29:54+08:00",
                    "modified_at": "2026-10-26T12:15:52+08:00",
                    "original_listed_at": "2026-09-03T09:29:54+08:00"
                },
                "price": {
                    "label": "RM 430,000",
                    "amount": 430000,
                    "period": null,
                    "currency": "MYR",
                    "old_price": 450000
                },
                "title": "MURAH GROUND FLOOR\u203c\ufe0fDEPO FLEXI\u203c\ufe0fD\u2019rimba Resort Sek11 Kota Damansara",
                "images": [
                    "https://img.rnudah.com/images/29/2991315954742560920.jpg"
                ],
                "seller": {
                    "name": "PN LINDA OTHMAN 0120000000",
                    "type": "agent",
                    "user_id": 8689888,
                    "store_id": 866823,
                    "company_ad": true,
                    "store_verified": false
                },
                "tenure": "Leasehold",
                "list_id": 115156368,
                "bedrooms": 3,
                "building": {
                    "id": "manual_entry",
                    "name": null
                },
                "category": {
                    "id": 2020,
                    "name": "Apartment / Condominium"
                },
                "location": {
                    "region": "Selangor",
                    "subarea": "Kota Damansara",
                    "region_id": 8,
                    "subarea_id": 304
                },
                "bathrooms": 2,
                "furnished": null,
                "image_count": 12,
                "media_count": 12,
                "listing_type": "sale",
                "property_type": {
                    "id": 2,
                    "name": "Apartment"
                }
            }
        ],
        "search_metadata": {
            "page": 1,
            "showing": 40,
            "has_next": true,
            "per_page": 40,
            "filtered_out": 0,
            "total_results": 15750,
            "depth_limit_reached": false
        },
        "search_parameters": {
            "page": 1,
            "sort": "latest",
            "region": 8,
            "bedrooms": 3,
            "category": "apartment",
            "listing_type": "sale"
        }
    },
    "meta": {
        "billable": true,
        "endpoint_family": "search"
    },
    "success": true
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | A required parameter or a value is invalid. This response is not billable. |
| 503 | Upstream Unavailable | Mudah.my could not be reached. This response is not billable and is retryable. |
| 503 | Unexpected Upstream Data | Mudah.my returned data in an unexpected shape. This response is not billable and is retryable. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
