Skip to content
Scrappa Get API key
Mudah.my Property API 1 credit/request

Mudah.my Property Listing API Documentation

GET https://scrappa.co/api/mudah-property/v1/listing

Mudah.my Property Listing API returns one listing by its list id. The record has the title, full description as text and HTML, price in MYR, bedrooms, bathrooms, size, property type, tenure, furnishing, floor range, parking, facilities, building details (address, completion year, floors, units), nearby places, region and subarea, building link, full-size photos, video links and the seller. Agent and company sellers include name, company, registration number and phone. Private owners never include name or phone, and phone numbers are removed from the ad text. An id that no longer exists returns 404 and is not billed.

Mudah.my Property Listing API Documentation 1 credit/request

Endpoint

Request preview
GET
https://scrappa.co/api/mudah-property/v1/listing
Auth header
x-api-key
Cost
1 credit/request
list_id = 1234567890
Response preview
200 OK
{
    "data": {
        "url": "https://www.mudah.my/brand-new-trinity-wellnessa-condominium-pinggiran-ukay-ampang-115015696.htm",
        "size": {
            "unit": "sq.ft.",
            "value": 1008
        },
        "ad_id": 135072534,
        "price": {
            "label": "RM 650,000",
            "amount": 650000,
            "period": null,
            "currency": "MYR",
            "old_price": null
...

Parameters

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

Runnable path

1 required parameter needed before sending a request.

list_id integer Required

The list_id of a search item. Example: 115015696.

Example value 1234567890

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": {
        "url": "https://www.mudah.my/brand-new-trinity-wellnessa-condominium-pinggiran-ukay-ampang-115015696.htm",
        "size": {
            "unit": "sq.ft.",
            "value": 1008
        },
        "ad_id": 135072534,
        "price": {
            "label": "RM 650,000",
            "amount": 650000,
            "period": null,
            "currency": "MYR",
            "old_price": null
        },
        "title": "Brand New Trinity Wellnessa Condominium Pinggiran Ukay Ampang",
        "images": [
            "https://cdn.rnudah.com/images/plain/1ad50e5db296cefc5c75afd620b579fd-2988873644147707589.jpg",
            "https://cdn.rnudah.com/images/plain/f2da7eeaf0418b8fe60d596d803b80a9-2988873643950242041.jpg"
        ],
        "seller": {
            "logo": "https://cdn.rnudah.com/image_logo/plain/f8b450740441eac3b4479724bf99b651-2973258161355603778.jpg",
            "name": "M.J. Zairin",
            "type": "agent",
            "phone": "0120000000",
            "user_id": 6690932,
            "store_id": 790734,
            "verified": true,
            "company_ad": true,
            "ren_number": "REN 32537",
            "firm_number": "12072",
            "company_name": "Azmi Real Estate Agency Sdn Bhd",
            "member_since": "2017-10-01T00:00:00+08:00",
            "profile_slug": "mjzairin"
        },
        "tenure": "Freehold",
        "list_id": 115015696,
        "parking": 2,
        "bedrooms": 3,
        "building": {
            "id": "8b5e379e-b69d-4d4c-a9a6-200f7ae06ae1",
            "url": "https://www.mudah.my/property/properties-in-trinity-wellnessa-selangor",
            "name": "Trinity Wellnessa",
            "slug": "trinity-wellnessa"
        },
        "category": {
            "id": 2020,
            "name": "Apartment / Condominium"
        },
        "location": {
            "label": "Selangor - Ampang",
            "region": "Selangor",
            "subarea": "Ampang",
            "region_id": 8,
            "subarea_id": 268
        },
        "bathrooms": 2,
        "furnished": null,
        "images_hd": [
            "https://cdn.rnudah.com/image_hd/plain/1ad50e5db296cefc5c75afd620b579fd-2988873644147707589.jpg",
            "https://cdn.rnudah.com/image_hd/plain/f2da7eeaf0418b8fe60d596d803b80a9-2988873643950242041.jpg"
        ],
        "facilities": [
            "Swimming Pool",
            "Playground"
        ],
        "land_title": "Non Bumi Lot",
        "parameters": [
            {
                "id": "price",
                "label": "Price",
                "value": "RM 650,000"
            },
            {
                "id": "category_id",
                "label": "Category",
                "value": "Apartment / Condominium, For sale"
            }
        ],
        "video_urls": [],
        "description": {
            "html": "ASKING PRICE: RM650,000 (Nego)<br><br>DETAILS<br>- Condominium<br>- Freehold<br>- Strata Ready<br>- Block A2, Level 10<br>- Build Up - 1,008 sqft<br>- 3 Bedrooms & 2 Bathrooms<br>- 2 allocated parking (Level 5)<br>- Balcony facing Pool<br>- Maintainence fee...",
            "text": "ASKING PRICE: RM650,000 (Nego)\n\nDETAILS\n- Condominium\n- Freehold\n- Strata Ready\n- Block A2, Level 10\n- Build Up - 1,008 sqft\n- 3 Bedrooms & 2 Bathrooms\n- 2 allocated parking (Level 5)\n- Balcony facing Pool\n- Maintainence fees: RM306/mth\n- 4 unit Airconds\n\nF..."
        },
        "floor_range": "Medium",
        "listing_type": "sale",
        "property_type": "Condominium",
        "property_details": [
            {
                "id": "facilities",
                "group": "FACILITIES & AMENITIES",
                "label": "Facilities",
                "value": "Swimming Pool, Playground, Squash Court, Security, Jogging Track, Parking, Minimart, Gymnasium, Lift, Sauna"
            },
            {
                "id": "prop_name",
                "group": "BUILDING DETAILS",
                "label": "Building Name",
                "value": "Trinity Wellnessa"
            }
        ],
        "additional_facilities": []
    },
    "meta": {
        "billable": true,
        "endpoint_family": "listing"
    },
    "success": true
}

Errors

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

422

Validation Error

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

{
    "errors": {
        "field": [
            "The field is invalid."
        ]
    },
    "message": "The request validation failed"
}
404

Not Found

The requested resource does not exist or was removed. This response is not billable.

{
    "meta": {
        "billable": false,
        "retryable": false,
        "endpoint_family": "listing"
    },
    "error": {
        "code": "NOT_FOUND",
        "message": "The requested resource was not found."
    },
    "success": false
}
503

Upstream Unavailable

Mudah.my could not be reached. This response is not billable and is retryable.

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

Unexpected Upstream Data

Mudah.my returned data in an unexpected shape. This response is not billable and is retryable.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "listing"
    },
    "error": {
        "code": "INVALID_UPSTREAM_SHAPE",
        "message": "Mudah.my returned data in an unexpected shape. 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.