# Seoul Real Estate Prices - Sale & Rent (서울 실거래가) (`thistle_electricity_fwz/seoul-real-estate-transactions`) Actor

Official Seoul real estate transaction prices (서울시 부동산 실거래가): apartment, officetel, villa & house sales plus jeonse/wolse rent. Korea property data, KRW per pyeong.

- **URL**: https://apify.com/thistle_electricity_fwz/seoul-real-estate-transactions.md
- **Developed by:** [KIMMINSUB](https://apify.com/thistle_electricity_fwz) (community)
- **Categories:** Real estate, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$1.00 / 1,000 transaction records

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Seoul Real Estate Transactions – Apartment Sale & Rent Prices (서울 실거래가)

**Official transaction prices for every Seoul property deal.** This Actor pulls the **Seoul Metropolitan Government's real-transaction database (서울시 부동산 실거래가 · 전월세가 정보)** and returns clean, analysis-ready rows: **contract date, district, dong, building/complex, type, area (m² & pyeong), floor, build year, price in KRW, price per pyeong, cancelled flag** – and for rentals **jeonse/wolse deposit, monthly rent, contract period and renewal info**.

✅ Official government data (공공누리 제1유형 – commercial use allowed) · ✅ Sales **and** jeonse/wolse rents · ✅ Apartments, officetels, villas, houses · ✅ Prices converted from 만원 to real KRW · ✅ English district names

### Use cases

- 🏙️ **Apartment price tracking** – daily new deals for Gangnam, Songpa, Mapo… or a specific complex (래미안, 헬리오시티, 은마).
- 📊 **Market research & valuation models** – price per pyeong by district, building age and floor.
- 🏠 **Jeonse / wolse analysis** – deposit-to-price ratios (전세가율), renewal-right usage, rent trends.
- 🧑‍💼 **Proptech, brokers & investors** – feed dashboards, Google Sheets, BI tools or AI agents via API.

### How to get your free API key (2 minutes)

1. Sign in at **[data.seoul.go.kr](https://data.seoul.go.kr)** (서울 열린데이터광장).
2. **인증키 신청** → *일반 인증키* → purpose e.g. "부동산 분석" → the key is issued instantly.
3. Paste it into **Seoul Open Data API key**. The key is stored as a secret input.

No key? Leave it empty – the Actor uses Seoul's official demo key `sample` (5 rows per query) so you can preview the output.

### How much does it cost?

**$0.001 per transaction → $1.00 per 1,000 records.** No subscription. The Seoul API itself is free.

| Run | Records | Cost |
|---|---|---|
| Demo (no key) | 10 | $0.01 |
| Gangnam apartment sales, this year | ~2,000 | $2.00 |
| All Seoul apartment sales, this year | ~25,000 | $25 |

Set **Max cost per run** in run options and the Actor stops cleanly at your budget.

### Input example

```json
{
  "apiKey": "YOUR_SEOUL_OPEN_DATA_KEY",
  "dealTypes": ["sale"],
  "districts": ["강남구", "Songpa"],
  "buildingTypes": ["apartment"],
  "contractDateFrom": "2026-09-01",
  "buildingNameContains": "",
  "maxItems": 5000
}
```

### Output example

| contractDate | district | dong | buildingName | type | areaM2 | floor | priceKrw | KRW / pyeong |
|---|---|---|---|---|---|---|---|---|
| 2026-10-02 | 강남구 | 대치동 | 대치현대 | 아파트 | 59.82 | 3 | 2,400,000,000 | 132,630,000 |
| 2026-10-07 | 영등포구 | 당산동5가 | 당산역해링턴타워 | 오피스텔 | 23.59 | 4 | 190,000,000 | 26,625,653 |

```json
{
  "dealType": "rent",
  "contractDate": "2026-10-07",
  "district": "성동구",
  "districtEn": "Seongdong-gu",
  "dong": "행당동",
  "address": "서울특별시 성동구 행당동 344",
  "buildingName": "신동아",
  "buildingType": "아파트",
  "areaM2": 59.97,
  "areaPyeong": 18.1,
  "floor": 2,
  "rentType": "전세",
  "depositKrw": 447000000,
  "monthlyRentKrw": 0,
  "contractPeriod": "26.10~28.10",
  "newOrRenewal": "갱신",
  "previousDepositKrw": 330000000
}
```

### FAQ

**Is this legal to use commercially?** Yes. The datasets are published by the Seoul Metropolitan Government under **KOGL Type 1 (공공누리 제1유형)**: commercial use and modification are allowed with source attribution (see below).

**Does it contain personal data?** No names or unit numbers. Seoul already masks lot numbers for detached/multi-family houses.

**Why "report year"?** Seoul indexes deals by the year they were reported (접수연도). Late-December contracts can appear in the next year – add both years if needed.

**Other Korean cities?** This Actor covers Seoul. Nationwide MOLIT data is planned.

### Source & attribution

- 출처: **서울특별시, 「서울시 부동산 실거래가 정보」(OA-21275) · 「서울시 부동산 전월세가 정보」(OA-21276), 서울 열린데이터광장 (data.seoul.go.kr)**, 공공누리 제1유형(출처표시).
- Data is fetched with **your own** API key via the official Open API. This Actor is not affiliated with or endorsed by the Seoul Metropolitan Government. Keep the attribution above when you republish the data.

### 한국어 안내

**서울시 부동산 실거래가(매매)와 전월세가를 공식 Open API로 수집합니다.** 자치구·건물유형(아파트/오피스텔/연립다세대/단독다가구)·계약일·단지명으로 필터링하고, 금액은 만원 → 원 단위로 변환, 평당가·평수까지 계산해 드립니다.

- 준비물: 서울 열린데이터광장 무료 인증키(본인 키 입력, 비밀 입력값으로 저장). 키가 없으면 데모 키(쿼리당 5건)로 미리보기.
- 가격: 1건당 $0.001 (1,000건 $1)
- 출처: 서울특별시, 서울 열린데이터광장 · 공공누리 제1유형(상업적 이용 가능, 출처표시)

# Actor input Schema

## `apiKey` (type: `string`):

Your own free key from https://data.seoul.go.kr (로그인 → 인증키 신청 → 일반 인증키). Leave empty to try the official demo key 'sample' (max 5 rows per query).

## `dealTypes` (type: `array`):

sale = 매매 실거래가, rent = 전월세 (jeonse / wolse).

## `districts` (type: `array`):

Seoul districts (자치구): 강남구 / Gangnam / 11680 … Empty = all 25 districts.

## `buildingTypes` (type: `array`):

Empty = all types.

## `receiptYears` (type: `array`):

Years the deal was reported (접수연도), e.g. 2026, 2025. Empty = current year (or every year since 'Contract date from').

## `contractDateFrom` (type: `string`):

Optional – only contracts signed on/after this date.

## `contractDateTo` (type: `string`):

Optional – only contracts signed on/before this date.

## `buildingNameContains` (type: `string`):

Optional, e.g. 래미안, 헬리오시티, 은마.

## `includeCancelled` (type: `boolean`):

Keep sale contracts later cancelled (해제). They are flagged with cancelled=true.

## `maxItems` (type: `integer`):

Maximum records to save (you pay per record).

## Actor input object example

```json
{
  "dealTypes": [
    "sale",
    "rent"
  ],
  "districts": [],
  "buildingTypes": [],
  "receiptYears": [],
  "includeCancelled": true,
  "maxItems": 200
}
```

# Actor output Schema

## `sales` (type: `string`):

Sale transactions: price, price per pyeong, area, floor, building

## `rents` (type: `string`):

Jeonse / wolse contracts: deposit, monthly rent, period

## `allItems` (type: `string`):

Full dataset items with every field

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "districts": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("thistle_electricity_fwz/seoul-real-estate-transactions").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "districts": [] }

# Run the Actor and wait for it to finish
run = client.actor("thistle_electricity_fwz/seoul-real-estate-transactions").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "districts": []
}' |
apify call thistle_electricity_fwz/seoul-real-estate-transactions --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,thistle_electricity_fwz/seoul-real-estate-transactions"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/RBgoOzeMSJdlz0qLl/builds/ag6Jzoh2bgDux5yPG/openapi.json
