Hipflat Scraper [$0.80/1k💰] Thailand Property & Projects
Pricing
from $0.80 / 1,000 property or project results
Hipflat Scraper [$0.80/1k💰] Thailand Property & Projects
Scrape hipflat.co.th property listings and new-project data across Thailand: price, price per m², beds, baths, area, floor, type, address, GPS, amenities, photos, full description and project facts. Buy and rent; search and URL modes; project records with available units; sorts and filters.
Pricing
from $0.80 / 1,000 property or project results
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
9 days ago
Last modified
Categories
Share
Hipflat Scraper — Thailand Property & Projects
Scrape property listings and new-project market data from hipflat.co.th across Thailand — buy and rent, condos, houses, villas, townhouses, apartments, land, offices, commercial and hotels — with rich, structured fields per record.
Two ways to run it, one clean dataset out.
What you get
Per listing record:
- Identity:
listingId,url,title,dealType(buy/rent),propertyType - Price:
price,priceText,pricePerArea,currency - Size & layout:
bedrooms,bathrooms,area(m²),floor - Location:
address,latitude,longitude - Content:
description,images(every photo),mainImage,imageCount - With Fetch details on: full amenity list, floor, price per m², GPS, the full untruncated description, the parent-project facts (
projectName,projectDetails) and the advertiser (agencyName,agencyLogo)
Per project record (project directories and project pages):
projectName,projectSlug,address,latitude,longitudesaleFromPrice,rentFromPrice,availableUnitsCountunits(available units with price, price per m², layout),amenities,facilities,nearby, fulldescription
Common rival field names are mirrored as aliases (e.g. record_type, record_id, price_min, image_urls, coordinates, property_types) so existing pipelines keep working.
Modes
- Search — pick a deal type (buy/rent), property type and location, add optional price / bedroom / bathroom / area filters and a sort order. Location accepts English names for major provinces (Bangkok, Pattaya, Phuket, Chiang Mai, Chonburi, …) or a Thai province name; leave it empty to search all of Thailand.
- URL — paste any hipflat URL: a listing search (
/ขายคอนโด/กรุงเทพฯ), a single listing (/ads/...), a project directory (/thailand-projects/...) or a project page (/projects/...). The actor detects the shape and scrapes it. Deal type, property type, location and sort order above are ignored in this mode (a pasted URL carries its own); price, bedroom, bathroom and area filters still apply.
Search mode options
- Deal type: buy, rent
- Property type: condo, house, villa, townhouse, apartment, land, office, commercial, hotel
- Sort: relevance, price ↑/↓, bedrooms ↑/↓, area ↑/↓, newest first
Filters (search mode and URL mode)
- Price range (
minPrice/maxPrice, THB) - Bedrooms, minimum bathrooms, area range (
minArea/maxArea, m²)
Limits
- Max items — the single run cap (default 20; set 0 for unlimited).
- Max pages — optional per-search page ceiling; unlimited by default, defers to Max items.
Output caps only
The actor manages its own reliability internally. The only limits you set are the output caps above — there are no concurrency or retry knobs to tune.
Input parameters
| Field | Description |
|---|---|
| resumeFromRunId | Continue one specific interrupted run — paste a previous run or dataset ID and this run skips records already collected there. |
| incrementalMode | Turn this on for daily/recurring monitoring of the same search. The first run returns everything as NEW; later runs return only NEW/UPDATED/REAPPEARED by default. |
| stateKey | Optional. Name a monitoring campaign to keep its state stable, or to deliberately share state across differently-configured runs. Leave empty for an automatic key derived from the search/URL and detail settings. |
| emitUnchanged | Off by default. Also return UNCHANGED records (incremental mode) — returns and bills extra rows you already have. |
| emitExpired | Off by default. Also return EXPIRED records no longer found since the last run (incremental mode) — only produced after a complete, non-resumed, non-capped scan. Returns and bills extra synthetic rows. |
Resume & recurring updates
Two different features, both optional:
- Resume (
resumeFromRunId) continues one specific interrupted crawl: paste a previous run or dataset ID and this run skips every record already collected there. No state is kept between unrelated runs. - Incremental mode (
incrementalMode) is for scheduling this same search daily/weekly and getting only what changed. The actor remembers its own baseline for the search (keyed bystateKey, or an automatic key derived from the search/URL and detail settings) and classifies every record asNEW,UPDATED,UNCHANGED,REAPPEARED, orEXPIRED. By default onlyNEW/UPDATED/REAPPEAREDrecords return; turn onemitUnchanged/emitExpiredto also get those (both return — and bill — extra rows).EXPIREDrecords are only produced after a run that scanned its full search with no cap hit and no Resume.
Output then carries changeType, changedFields, firstSeenAt, and lastSeenAt. Change detection ignores scrapedAt (a per-run timestamp) and every field that only exists once the optional detail fetch has run (e.g. floor, pricePerArea, the full description, GPS coordinates, the advertiser and parent-project facts on listings; description, availableUnitsCount, facilities, units, nearby, marketStats, developer and GPS coordinates on projects) — none of those can be compared across runs where detail fetching was toggled on or off. Price, area, bedrooms/bathrooms, and every other core field do trigger UPDATED when they change.
Send results into your apps (MCP connectors)
Optionally pipe each record into the apps you already use via Model Context Protocol connectors — Notion, Linear, Airtable or Apify. Authorize a connector once under Apify → Settings → Integrations, then select it in the input. The connector receives a condensed, human-readable summary per item; the full record always stays in the dataset.
Plan requirement
Runs on any Apify plan, including the free tier. hipflat serves results only to a Thailand connection, so keep the default Thailand proxy for reliable results. On a limited or free connection the site may return no results; the input warns you when that is the case.
Pricing
Pay per event: one charge when the run starts, one per record pushed, and — only when Fetch details is on — one per listing whose detail page is fetched. Runs with detail fetching off are billed only for the records they return.