80trust / 100

Apartment Trades Summary

by 1gateway in Markets & finance

x402 APIPassing, checked 4 h ago

Use when you need a quick housing-market snapshot for a South Korean district-month instead of raw trades. Data: MOLIT reported apartment sales, cancelled deals excluded. Input: region (5-digit LAWD_CD, e.g. 11680), month (YYYYMM). Output: JSON count, median/average/min/max price and price per m2 and per pyeong in KRW and USD, breakdown by size class, top complexes by volume. Example: ?region=11680&month=202609

GET https://1gateway.dev/v1/realestate/apartment-trades/summary

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
42 ms typical, 42 ms slowest 5%
Last check
4 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://1gateway.dev/v1/realestate/apartment-trades/summary?month=202609&region=11680"
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2F1gateway.dev%2Fv1%2Frealestate%2Fapartment-trades%2Fsummary
const res = await pay("https://1gateway.dev/v1/realestate/apartment-trades/summary?month=202609&region=11680");
console.log(await res.json());

Example input

{
  "month": "202609",
  "region": "11680"
}

Example output

{
  "attribution": "Source: Ministry of Land, Infrastructure and Transport (국토교통부) apartment sale transaction data via data.go.kr (dataset 15126469, no usage restriction). Normali…",
  "cache": "miss",
  "currency": {
    "base": "KRW",
    "converted": "USD",
    "fxAsOf": "2026-09-10",
    "fxSource": "ecos:731Y001/0000001",
    "krwPerUsd": 1337.9
  },
  "methodology": "Excludes cancelled deals. Median/mean over priceKrw and priceKrw/exclusiveAreaM2. 1 pyeong = 3.305785 m². Area buckets follow common Korean housing classes.",
  "month": "2026-09",
  "region": {
    "code": "11680",
    "districtEn": "Gangnam-gu",
    "districtKo": "강남구",
    "known": true,
    "provinceEn": "Seoul",
    "provinceKo": "서울특별시"
  },
  "summary": {
    "byArea": [
      {
        "avgPriceKrw": 1602074074,
        "avgPricePerM2Krw": 32659449,
        "avgPricePerM2Usd": 24410.98,
        "avgPriceUsd": 1197454,
        "bucket": "under60",
        "count": 27,
        "label": "< 60 m²",
        "maxPriceKrw": 3000000000,
        "medianPriceKrw": 1555000000,
        "medianPricePerM2Krw": 38483067,
        "medianPricePerM2Usd": 28763.78,
        "medianPricePerPyeongKrw": 127216747,
        "medianPriceUsd": 1162269,
        "minPriceKrw": 195000000
      }
    ],
    "cancelledExcluded": 1,
    "dealTypeShare": {
      "brokered": 87,
      "direct": 6
    },
    "overall": {
      "avgPriceKrw": 2791677419,
      "avgPricePerM2Krw": 34190607,
      "avgPricePerM2Usd": 25555.43,
      "avgPriceUsd": 2086611,
      "count": 93,
      "maxPriceKrw": 10000000000,
      "medianPriceKrw": 2765000000,
      "medianPricePerM2Krw": 38829152,
      "medianPricePerM2Usd": 29022.46,
      "medianPricePerPyeongKrw": 128360827,
      "medianPriceUsd": 2066672,
      "minPriceKrw": 195000000
    },
    "topComplexes": [
      {
        "complexNameEn": "Eunma",
        "complexNameKo": "은마",
        "medianPricePerM2Krw": 41151192,
        "trades": 11
      }
    ],
    "totalReported": 94
  }
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
4 h agoPassed40242 ms$0.0045