Rumah123 Data Parser & API
Rumah123 is Indonesia’s #1 property portal — ~3.2–3.4M monthly visits (East & SE Asia research report) — and PropAPIS extracts its resale, rental, new-launch and commercial listings through a single REST API. One integration also spans the wider PropertyGuru network (Singapore, Malaysia, Thailand’s DDproperty and Vietnam’s Batdongsan).
| Country | Indonesia |
|---|---|
| Type | Portal |
| Owner | PropertyGuru Group |
| Listing types | resale, rental, new-build, commercial |
| Monthly visits | ~3.2–3.4M / mo |
| Active listings | — |
| API access | No public API (parse-only) |
| Parse priority | ★★★★☆ |
| Official site | www.rumah123.com |
Platform Overview
Market Position
- #1 property portal in Indonesia — ~3.2–3.4M monthly visits (per the East & SE Asia research report)
- Part of PropertyGuru Group (formerly under the iProperty / REA lineage), sharing the same data model as PropertyGuru SG/MY, DDproperty TH and Batdongsan VN
- Broad coverage across Jakarta, Greater Jakarta and major Indonesian metros
- Note: research report flags traffic declining year-on-year (
-17%) amid a mobile-first shift (estimate, verify before prioritizing)
Market Coverage
Geographic Coverage:
- Jakarta and Jabodetabek (Greater Jakarta)
- Surabaya, Bandung, Bali
- Nationwide across Indonesia
Property Types:
- Houses (rumah) and townhouses
- Apartments and condominiums
- New launches / developer projects
- Commercial properties
Data Availability
Rumah123 standardizes its residential fields on the PropertyGuru group schema — land/building area, Indonesian land-certificate type (SHM/HGB), price-per-square-meter and project data — giving consistent, structured listing data for the Indonesian market.
Listing Categories:
- Buy: resale houses and apartments
- Rent: long-term rentals
- New Launches: developer projects
- Commercial: offices and retail
Data Fields Available
PropAPIS extracts structured data from each Rumah123 listing:
Property Information
- Address: district, building and project
- Price: sale price or rent (IDR)
- Bedrooms and Bathrooms
- Property Type: house, apartment, commercial
- Area: land and building size (sq m)
- Certificate: land-title type (SHM, HGB)
Listing Details
- Description: full listing text
- PSF: price per square meter
- Photos: image URLs
- Furnishing: furnished / unfurnished
- Project: development / project name
- Added Date
Agent Information
- Agency: agency name
- Agent: listing agent name
- Agent Contact: phone where published
Location Data
- District and Area
- City / Province
- Coordinates: latitude and longitude
API Endpoints
Get Property Details
from propapis import PropAPIS
api = PropAPIS(api_key='your_api_key')
# Get a listing by URL or ID
property_data = api.platforms.rumah123.get_property(
listing_id='12345678'
)
print(f"Title: {property_data.title}")
print(f"Price: Rp {property_data.price:,}")
print(f"Type: {property_data.property_type}")
print(f"District: {property_data.district}")
print(f"Certificate: {property_data.certificate}")Search Listings
# Search Rumah123 listings
listings = api.platforms.rumah123.search(
location='Jakarta Selatan',
purpose='for-sale',
min_price=1000000000,
property_type='House'
)
for listing in listings[:10]:
print(f"{listing.title} - Rp {listing.price:,}")
print(f" {listing.bedrooms} bed | {listing.district}")Search Rentals
# Search Indonesian rental properties
rentals = api.platforms.rumah123.search(
location='Jakarta',
purpose='for-rent',
min_bedrooms=2
)
for rental in rentals[:5]:
print(f"{rental.title} - Rp {rental.price:,}/year")Quick Start
from propapis import PropAPIS
api = PropAPIS(api_key='your_api_key')
# Search Rumah123 listings in Jakarta
listings = api.platforms.rumah123.search(location='Jakarta', purpose='for-sale')
for listing in listings[:5]:
print(f"{listing.title} - Rp {listing.price:,}")import { PropAPIS } from 'propapis';
const api = new PropAPIS({ apiKey: 'your_api_key' });
// Search Rumah123 listings in Jakarta
const listings = await api.platforms.rumah123.search({
location: 'Jakarta',
purpose: 'for-sale',
});
listings.slice(0, 5).forEach((l) => {
console.log(`${l.title} - Rp ${l.price.toLocaleString()}`);
});curl "https://api.propapis.com/v1/platforms/rumah123/search?location=Jakarta&purpose=for-sale" \
-H "Authorization: Bearer your_api_key"