serve Property Scraper — Korea Real Estate Data & API avatar

serve Property Scraper — Korea Real Estate Data & API

Pricing

from $3.00 / 1,000 overview listing extracteds

Go to Apify Store
serve Property Scraper — Korea Real Estate Data & API

serve Property Scraper — Korea Real Estate Data & API

serve.co.kr (부동산써브) scraper & Korea real estate data API. Sale, jeonse & monthly-rent listings: price, deal type, area, rooms, floor, direction, geo, agency contact, cross-portal ids — clean JSON/CSV, one row per listing. Fast overview or full detail. No account needed. 부동산써브 매물 데이터·부동산 API.

Pricing

from $3.00 / 1,000 overview listing extracteds

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

serve Property Scraper — Korea Real Estate Data & API 🏠

SIÁN Agency Store Fazwaz Property Scraper Immobiliare.it Scraper Bayut Property Scraper

🎉 Turn serve.co.kr (부동산써브) into clean, structured data — one row per listing, ready for analysis

For real-estate analysts, investors, relocation agents, and data teams working the South Korean property market


📋 Overview

Need South Korean sale, jeonse and monthly-rent listings as clean data instead of clicking around a map? This scraper turns serve.co.kr search results into structured JSON/CSV — one clean record per listing, with prices normalised to KRW, deal type, area, rooms, floor, geo coordinates, agency contact and cross-portal ids.

Why analysts and agencies choose us:

  • One clean row per listing — every result becomes a structured record, no nested mess
  • Fast & lightweight — direct JSON extraction, no slow headless browser, no proxy overhead
  • 🎯 55+ data points — price (KRW + raw 만원), deal type, supply/exclusive/contract area, rooms, baths, floor, direction, geo, agency name & phone, building approval date
  • 📡 Cross-portal ids — surfaces the matching Naver / KB Land / Dabang article ids, so you can join serve data to other Korean portals
  • 💰 Pay-per-result — only pay for listings you actually receive — transparent and cheap
  • 💎 Two depths — fast overview for whole-market sweeps, full detail for parking, heating, household count and the full street address
  • Four ways in — by legal-dong code, by pasted search URL, by automatic region crawl, or by article id

✨ Features

  • 🏢 Listings, done right — clean per-listing records, one row per unit
  • 💰 Money normalised — man-won values become whole KRW and keep the raw integer
  • 📐 Price-per-m² built in — yield and comparison math ready out of the box
  • 🗺️ Region crawl — auto-discover every neighbourhood with listings in a region and sweep them
  • 🔎 Detail enrichment — parking count, heating method & fuel, household count, building approval date, full street address
  • 📞 Agency contact — agency name, representative, landline and mobile on every listing
  • 🔗 Cross-portal join keys — Naver / KB / Dabang article ids on each record
  • 🔗 Paste-a-URL mode — paste a serve listing URL and the actor reads the neighbourhood + filters
  • 📦 Clean exports — JSON, CSV, Excel straight from the dataset
  • 🌐 Optional Korea proxy — off by default, available as a one-click escape hatch

🎬 Quick Start

Pick a scrape mode (overview or detail), choose how to find listings (legal-dong code, search URL, region crawl, or article id), and run. Results land in a clean dataset you can export as JSON, CSV or Excel.

curl -X POST "https://api.apify.com/v2/acts/sian.agency~serve-property-scraper/runs?token=YOUR_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"scrapeMode": "overview", "searchMode": "byLdong", "ldongCodes": ["4113511100"]}'

🚀 Getting Started (3 Simple Steps)

Step 1: Choose your listings

Give a legal-dong code (e.g. 4113511100), paste a serve search URL, turn on region crawl, or list specific article ids.

Step 2: Pick a depth

Overview for fast, near-complete listing rows. Detail to also pull parking, heating, household count and the full address.

Step 3: Run & export

Start the run and download your dataset as JSON, CSV, or Excel.

That's it! In under a minute, you'll have:

  • A clean dataset of South Korean property listings
  • Prices normalised to KRW with price-per-m² computed
  • Agency contact and cross-portal ids ready to join

📥 Input Configuration

FieldTypeRequiredDescription
scrapeModestringNooverview (fast) or detail (enriched)
searchModestringNobyLdong, bySearchUrl, byCrawl, or byArticleId
ldongCodesarrayNoLegal-dong codes to list (byLdong)
searchUrlsarrayNoserve.co.kr listing URLs carrying ldongCd (bySearchUrl)
articleIdsarrayNoatclNo:CATEGORY pairs for detail (byArticleId)
categorystringNoapt, officetel, house, presale, all, or a detail code (OFT/APT/RED/LOT)
orderstringNodefault, newest, price, area
maxResultsintegerNoMax listings per run (FREE: 25, PAID: unlimited)

Example — overview by legal-dong:

{
"scrapeMode": "overview",
"searchMode": "byLdong",
"ldongCodes": ["4113511100"],
"category": "officetel",
"maxResults": 100
}

Example — detail by article id:

{
"scrapeMode": "detail",
"searchMode": "byArticleId",
"articleIds": ["333750957:OFT"]
}

📤 Output

Results are saved to the Apify dataset with 55+ fields including:

FieldTypeDescription
listingIdstringserve article number (atclNo)
urlstringCanonical serve.co.kr listing URL
deal_typestring매매 (sale) / 전세 (jeonse) / 월세 (monthly)
categorystring오피스텔 / 아파트 / 주택 / 분양권
complex_namestringApartment or building name
price_krwnumberSale price or jeonse deposit in whole KRW
monthly_rent_krwnumberMonthly rent in whole KRW
price_per_sqm_krwnumberComputed price per square metre
exclusive_area_sqmnumberExclusive (net) area in m²
rooms / bathroomsnumberRoom & bathroom counts
floor / floors_totalnumberUnit floor & building total floors
sido / sigungu / dongstringProvince, city/district, neighbourhood
addressstringFull street address (detail)
agency_name / agency_phonestringListing agency & phone
naver_atcl_no / kb_atcl_no / dabang_atcl_nostringCross-portal join keys

Example record:

{
"listingId": "333750957",
"url": "https://www.serve.co.kr/good/map?m=1&lat=37.35108&lng=127.10487&atcl=333750957",
"source": "overview",
"deal_type": "매매",
"category": "오피스텔",
"complex_name": "코오롱트리폴리스",
"price_krw": 1200000000,
"price_manwon": 120000,
"exclusive_area_sqm": 171.19,
"price_per_sqm_krw": 7009755,
"rooms": 4,
"bathrooms": 2,
"floor": 11,
"floors_total": 37,
"sido": "경기도",
"sigungu": "성남시 분당구",
"dong": "금곡동",
"agency_name": "프라임공인중개사사무소",
"agency_phone": "031-728-3377",
"naver_atcl_no": "2633107628",
"currency": "KRW"
}

💼 Use Cases & Examples

1. Korea Rent & Sale Market Research

Analysts mapping prices across a Seoul district or Gyeonggi neighbourhood.

Input: A legal-dong code or region crawl Output: Every listing with price, area and price/m² Use: Build rent-by-area and sale-by-area benchmarks over time

2. Property Investment Analysis

Investors comparing gross yields across buildings and unit types.

Input: Officetel or apartment category in a target area Output: Sale price, monthly rent, lease deposit, area, price/m² Use: Compute cap rates and shortlist undervalued units

3. Real-Estate Lead Generation

Agencies sourcing listing-agent contacts at scale.

Input: A region crawl across target neighbourhoods Output: Agency name, representative, landline and mobile per listing Use: Build agent outreach lists for partnerships or buy-side mandates

Relocation agents shortlisting rentals with deposit and area.

Input: A neighbourhood + monthly-rent category Output: Rent, lease deposit, rooms, floor, direction, address Use: Hand clients a clean comparison sheet in minutes

5. Cross-Portal Data Joins

Data teams unifying Korean property feeds.

Input: Overview or detail across a region Output: Naver / KB / Dabang article ids on every record Use: Deduplicate and join serve listings to other Korean portals

6. Price & Inventory Monitoring

Teams tracking new inventory and price moves.

Input: A scheduled region crawl Output: Fresh listings with registration date Use: Detect new supply and price changes week over week


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/serve-property-scraper').call({
scrapeMode: 'overview',
searchMode: 'byLdong',
ldongCodes: ['4113511100'],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/serve-property-scraper').call(
run_input={
'scrapeMode': 'overview',
'searchMode': 'byLdong',
'ldongCodes': ['4113511100'],
}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~serve-property-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"scrapeMode": "overview", "searchMode": "byLdong", "ldongCodes": ["4113511100"]}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: Schedule or webhook
  2. HTTP Request: Call the actor API
  3. Process: Handle the JSON results
  4. Action: Save to a sheet, notify a channel, or push to your CRM

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 25 listings per run — full feature access, same quality
  • No credit card required
  • Perfect for testing and small projects
  • Unlimited listings per run
  • Faster processing, no delays
  • Pay-per-result: only charged for listings you actually receive

💰 Cheap, transparent pricing — a low per-listing overview rate, with detail enrichment only when you ask for it.

🔗 View current pricing


❓ Frequently Asked Questions

Q: How many listings can I scrape? A: FREE tier: 25 per run. PAID tier: unlimited.

Q: What's the difference between overview and detail? A: Overview rows are already ~85% complete (price, area, rooms, floor, geo, agency). Detail adds parking, heating, household count, building approval date and the full street address — at one extra request per listing.

Q: What output formats are available? A: JSON, CSV, Excel — export directly from the Apify dataset.

Q: Do I need a proxy or account? A: No. The actor runs without an account or proxy. A Korea residential proxy is available as an optional one-click escape hatch.

Q: How do I find a legal-dong code? A: Use the region crawl mode to discover neighbourhoods automatically, or copy the ldongCd from a serve.co.kr listing request.

Q: Is this legal? A: Yes — we only extract publicly available data. See the legal section below.


🐛 Troubleshooting

No listings returned

  • Check the legal-dong code is valid, or switch to region crawl mode
  • Some neighbourhoods have few or no active listings — try a denser area

Detail run skips some listings

  • Detail needs both the article id and its category code; use atclNo:CATEGORY (e.g. 333750957:OFT) or set Category to a single code

Run hit the FREE cap

  • FREE runs are capped at 25 listings — upgrade for unlimited results

Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.


™️ Trademark Disclaimer

serve.co.kr and 부동산써브 are trademarks of their respective owners. This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by serve.co.kr or its operators. All product names, logos, and brands are property of their respective owners and are used for identification purposes only.


🤝 Support

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools