propertyguru.com.sg APIpropertyguru.com.sg ↗
Access Singapore property listings for sale and rent, new project launches, and agent search via the PropertyGuru API. Prices, floor area, MRT proximity, and more.
curl -X GET 'https://api.parse.bot/scraper/b2a1aa00-4ad0-413c-8581-439d040fd61c/search_properties_for_sale?page=1&query=D09' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for properties for sale in Singapore with optional keyword or district filter. Returns paginated results with listing summaries including price, bedrooms, floor area, and agent info.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| query | string | Search keyword or district code (e.g., 'D09' for Orchard/River Valley, 'D01' for Raffles Place). District codes follow the pattern D01-D28. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"listings": "array of property listing summaries with id, title, address, price, psf, property_type, bedrooms, bathrooms, floor_area, mrt, agent, and url",
"total_pages": "integer total number of pages available"
},
"sample": {
"data": {
"page": 1,
"listings": [
{
"id": 25375951,
"mrt": {
"nearbyText": "9 min (720 m) from TE16 Havelock MRT Station"
},
"psf": "S$ 1,915.71 psf",
"url": "https://www.propertyguru.com.sg/listing/for-sale-cheap-fully-renovated-developer-unit-for-sale-2-bed-loft-in-d09-25375951",
"agent": {
"id": 12389785,
"name": "Kenneth Lin",
"agency": null
},
"price": {
"value": 2000000,
"pretty": "S$ 2,000,000",
"currency": "SGD"
},
"title": "CHEAP! Fully Renovated Developer Unit for Sale! 2 Bed + Loft in D09!",
"address": "",
"bedrooms": 2,
"bathrooms": 2,
"floor_area": 1044,
"property_type": "SALE"
}
],
"total_pages": 312
},
"status": "success"
}
}About the propertyguru.com.sg API
The PropertyGuru Singapore API exposes 5 endpoints covering residential property listings for sale and rent, new project launches, and agent search across Singapore. The search_properties_for_sale endpoint returns paginated listing summaries with price, PSF, bedroom count, floor area, MRT proximity, and agent details, while get_property_listing_detail retrieves the full record for a single listing by its URL slug.
Property Search and Listing Data
The search_properties_for_sale and search_properties_for_rent endpoints accept an optional query parameter that can be a keyword or a Singapore district code (e.g., D09 for Orchard/River Valley, D01 for Raffles Place). Both return paginated arrays of listing summaries with fields including id, title, address, price, psf (price per square foot), property_type, bedrooms, bathrooms, floor_area, and the nearest MRT station. Pagination is controlled via the page parameter, and total_pages in the response indicates how many pages are available for a given query.
Listing Detail
The get_property_listing_detail endpoint accepts a listing_slug obtained from the url field in search results. It returns a richer record with the marketing headline, tenure, district, agency, and a nested price object containing value, formatted, and currency. Agent information is returned as an object with id, name, and license_number, which aligns with Singapore's estate agent licensing requirements.
New Projects and Agents
The search_new_projects endpoint returns developer-launched projects, each with developer, price, property_type, bedrooms, bathrooms, an is_spotlight flag, and associated labels. It supports keyword filtering and pagination. The search_agents endpoint lets you look up real estate agents in Singapore by name and returns a paginated array of agent records, useful for verifying agent identity or building directories.
- Monitor asking prices and PSF trends across Singapore districts for rental and sale properties.
- Build a property comparison tool using bedroom count, floor area, and MRT proximity from listing summaries.
- Alert users to new project launches by developer or location using
search_new_projectswith a keyword filter. - Populate a CRM with agent license numbers and agency affiliations via
get_property_listing_detail. - Track inventory depth per district by iterating through paginated results for specific district codes like
D15orD10. - Cross-reference rental and sale PSF values for the same address to estimate yield estimates.
- Verify real estate agent credentials by name using the
search_agentsendpoint.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does PropertyGuru have an official developer API?+
How does district filtering work in the search endpoints?+
search_properties_for_sale and search_properties_for_rent accept a query parameter that can be a Singapore district code such as D09 (Orchard/River Valley) or D01 (Raffles Place). You can also pass a keyword like a neighbourhood name or development name. Results are paginated; use the page parameter alongside total_pages in the response to walk through all results.What property detail fields does `get_property_listing_detail` return that search summaries do not?+
tenure (e.g., freehold or 99-year leasehold), a headline marketing string, the agent's license_number, a structured price object with value, formatted, and currency sub-fields, and the district name. Search summary endpoints return flatter records focused on quick comparison fields like psf, floor_area, and MRT proximity.Does the API return sold transaction history or past rental prices for a property?+
Are commercial or industrial property listings included?+
property_type field in listing summaries will indicate the type returned, but dedicated filtering for commercial or industrial segments is not a current input parameter. You can fork this API on Parse and revise it to target those listing categories with additional query parameters.