iProperty MY Scraper - Properties, Prices, Agents & Photos
Pricing
from $1.00 / 1,000 listing results
iProperty MY Scraper - Properties, Prices, Agents & Photos
Scrape property listings from iProperty.com.my for sale or rent: price, PSF, bedrooms, bathrooms, floor area, tenure, property type, full address, agent (name, license, agency, contact numbers) and photo gallery. Search and URL modes, filters, 8 sort orders, and optional detail enrichment.
Pricing
from $1.00 / 1,000 listing results
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
iProperty.com.my Scraper
Pull structured property listings from iProperty.com.my at scale. Search by channel (for sale or for rent), location and filters, or paste any iProperty.com.my search or listing URL, and get a clean record per property with price, price type, price-per-square-foot, bedrooms, bathrooms, floor area, tenure, property type, the full address with region / district / area, the photo gallery, the listing agent (name, license, verified status, profile) and agency, and the aggregate agent rating. Two modes (search and URL), 8 sort orders, and location, property-type, price and bedroom filters. An optional detail pass adds the full property description, map coordinates, and the listing agent's contact numbers.
Why This Scraper?
- ~50 fields per listing, including price type (e.g. Negotiable), price-per-square-foot, tenure, the full photo gallery and the agent / agency profile.
- Two ways in: build a search from channel + location + filters, or paste search and listing URLs directly. Filter fields are ignored in URL mode so pasted links are used as-is.
- 8 sort orders (price, date, bedrooms, built-up size) and location, property-type, price and bedroom filters.
- Optional detail enrichment adds the full property description, the map coordinates (latitude / longitude), and the listing agent's contact numbers.
- One simple cap: set Max items and the run stops there once enough results are collected.
- Export results straight into Notion, Linear, Airtable or Apify via MCP connectors, without touching the dataset.
A note on agent reviews
iProperty.com.my does not publish per-comment agent reviews on its public pages. There is no list of individual review texts to scrape. The only review signal the public site exposes is an aggregate agent rating, returned here as agentRating with reviewCount and ratingAverage (these are commonly 0). This scraper returns that aggregate and does not invent per-comment reviews.
The listing agent's direct phone number is gated behind an on-page verification step and is not present in the page data, so agent.phone is intentionally left out rather than guessed.
Data You Get
Sample shape - values are illustrative placeholders, not from a live listing.
| Field | Example |
|---|---|
| listingId | 501630772 |
| title | Taman Wawasan, Puchong |
| propertyType | 2-storey Terraced House |
| priceValue | 750000 |
| pricePretty | RM 750,000 |
| priceType | Negotiable |
| psf | RM 535.71 psf |
| bedrooms | 4 |
| bathrooms | 3 |
| floorArea | 1800 |
| tenure | Freehold |
| fullAddress | Jalan Wawasan, Taman Wawasan, Puchong, Selangor |
| agent.name | Example Agent |
| agent.license | REN 00000 |
| agency.name | Example Realty Sdn. Bhd. |
| agentRating | { reviewCount: 0, ratingAverage: 0 } |
| imageCount | 6 |
| thumbnail | https://example-cdn/listing/501630772/thumb.jpg |
| url | https://www.iproperty.com.my/property/puchong/taman-wawasan/sale-501630772/ |
Detail fields (when Fetch full details is on): description, latitude, longitude, agentPhone, agentContacts.
How to Use
Search for sale in a location:
{"mode": "search","channel": "sale","location": "kuala-lumpur","sortBy": "price_asc","maxItems": 50}
Filter by price and bedrooms:
{"mode": "search","channel": "sale","priceMin": 300000,"priceMax": 800000,"bedrooms": 3,"maxItems": 100}
Paste iProperty.com.my URLs (filters ignored):
{"mode": "url","urls": ["https://www.iproperty.com.my/property-for-rent"],"fetchDetails": true,"maxItems": 80}
Input Parameters
| Parameter | Type | Description |
|---|---|---|
| mode | string | search (build a search from channel + location + filters) or url (use pasted URLs). |
| channel | string | sale or rent. |
| location | string | Optional location slug to narrow the search. Empty = whole country. |
| propertyType | string | Optional property-type filter. |
| priceMin | integer | Minimum price (MYR). |
| priceMax | integer | Maximum price (MYR). |
| bedrooms | integer | Minimum number of bedrooms. |
| sortBy | string | One of 8 sort orders (price, date, bedrooms, built-up size). |
| urls | array | iProperty.com.my search or listing URLs (URL mode). |
| fetchDetails | boolean | Visit each listing page for the full description, map coordinates and agent contact numbers. |
| maxItems | integer | The single cap on the run. 0 = unlimited. Default 20. |
| maxPages | integer | Optional safety bound on pages per search. Empty = unlimited; the run stops at Max items. |
| proxy | object | Proxy configuration. Apify Residential recommended. |
| maxResidentialMB | integer | Residential traffic budget in MB. Caps how much residential traffic a run may use; the run keeps working as long as the site still serves results. 0 = unlimited. |
| mcpConnectors | array | Optional MCP connectors to pipe results into (Notion, Linear, Airtable, Apify). |
| notionParentPageUrl | string | Notion parent page URL/id for the Notion connector. |
| maxNotifyListings | integer | Cap on items written to each connector per run. |
Send results into your apps (MCP connectors)
Optionally pipe each run's results into the tools you already use through Model Context Protocol (MCP) connectors. Authorize a connector under Apify, Settings, API & Integrations, then select it in mcpConnectors. Notion receives a rich page per listing (set notionParentPageUrl); Linear, Airtable and Apify get a best-effort write or digest. The MCP export never changes the dataset and never fails the run; maxNotifyListings caps how many items go to each connector.
Output Example
Sample shape - values are illustrative placeholders, not from a live listing.
{"listingId": 501630772,"url": "https://www.iproperty.com.my/property/puchong/taman-wawasan/sale-501630772/","title": "Taman Wawasan, Puchong","propertyType": "2-storey Terraced House","typeText": "For Sale","price": { "value": 750000, "pretty": "RM 750,000", "currency": "MYR", "type": "Negotiable" },"priceValue": 750000,"pricePerArea": "RM 416.67 psf","psf": "RM 535.71 psf","bedrooms": 4,"bathrooms": 3,"floorArea": 1800,"tenure": "Freehold","location": { "area": "Taman Wawasan", "district": "Puchong", "region": "Selangor" },"fullAddress": "Jalan Wawasan, Taman Wawasan, Puchong, Selangor","agent": { "id": 0, "name": "Example Agent", "license": "REN 00000", "isVerified": true, "profileUrl": "https://www.iproperty.com.my/property-agent/example-0/" },"agency": { "id": 0, "name": "Example Realty Sdn. Bhd." },"agentRating": { "reviewCount": 0, "ratingAverage": 0 },"images": ["https://example-cdn/listing/501630772/photo-1.jpg"],"imageCount": 6,"thumbnail": "https://example-cdn/listing/501630772/thumb.jpg","description": "Full property description (when Fetch full details is on).","latitude": 3.03671,"longitude": 101.61808,"source": "iproperty.com.my","scrapedAt": "2024-01-01T00:00:00+00:00"}
Plan Requirement
Runs on any Apify plan. This site serves best on residential connections, so set the proxy to Apify Residential for reliable results (Residential access is included on the Starter plan and higher). Datacenter and free-tier connections are commonly rejected and will return zero items; if you run on datacenter, a free tier or a non-residential connection the run logs a warning before spending compute.
Reliability
- Built for resilient, unattended runs: transient errors are recovered automatically so a run keeps working without manual intervention.
- Residential traffic budget: set
maxResidentialMBto cap residential spend. The run keeps returning results as long as the site still serves them, and will not silently drop to zero. 0 = unlimited.