# 부동산 매매 실거래가 조회



지역코드와 계약년월로 매매 실거래가를 조회합니다. 아파트·연립다세대·단독다가구·오피스텔을 유형으로 고를 수 있습니다.



인증: Authorization: Bearer $APICK_API_KEY

본문 있는 REST 요청: multipart/form-data. GET 본문 및 MCP JSON-RPC 규격은 해당 명세를 따릅니다.

인증키는 서버에 보관하세요. 모든 예제는 정적 자료입니다.



## POST /rest/rtms_trade 응답 필드

- `data` (object): 아래 하위 항목을 확인하세요.

- `data.items` (array): 아래 하위 항목을 확인하세요.

- `data.totalCount` (integer): 아래 하위 항목을 확인하세요.

- `data.pageNo` (integer): 아래 하위 항목을 확인하세요.

- `data.numOfRows` (integer): 아래 하위 항목을 확인하세요.

- `api` (object): 아래 하위 항목을 확인하세요.

- `api.cost` (integer): 아래 하위 항목을 확인하세요.

- `api.success` (boolean): 아래 하위 항목을 확인하세요.

- `api.ms` (integer): 아래 하위 항목을 확인하세요.

## API 요청: POST /rest/rtms_trade



### 입력

- `lawdCd` (string, 필수): 지역코드 (법정동코드 앞 5자리, 예: 11110)

- `dealYmd` (string, 필수): 계약년월 (YYYYMM, 예: 202601)

- `propertyType` (string, 선택): 부동산 유형 (기본 apt) 허용값: apt, rh, sh, offi

- `pageNo` (integer, 선택): 페이지 번호 (기본 1)

- `numOfRows` (integer, 선택): 페이지당 결과 수 (기본 10, 최대 1000)



### 응답 명세

```json

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {}
        },
        "totalCount": {
          "type": "integer"
        },
        "pageNo": {
          "type": "integer"
        },
        "numOfRows": {
          "type": "integer"
        }
      }
    },
    "api": {
      "type": "object",
      "properties": {
        "cost": {
          "type": "integer"
        },
        "success": {
          "type": "boolean"
        },
        "ms": {
          "type": "integer"
        }
      }
    }
  }
}

```

### 정적 응답 예시

```json

{
  "data": {
    "items": [],
    "totalCount": 0,
    "pageNo": 1,
    "numOfRows": 50
  },
  "api": {
    "cost": 100,
    "success": true,
    "ms": 460
  }
}

```

### curl

```curl

curl --fail-with-body --request POST 'https://apick.app/rest/rtms_trade' \
  --header "Authorization: Bearer $APICK_API_KEY" \
  --form-string 'lawdCd=11110' \
  --form-string 'dealYmd=202607' \
  --form-string 'propertyType=apt' \
  --form-string 'numOfRows=50'

```

### Node.js (서버 ESM)

```javascript

const form = new FormData();
form.append("lawdCd", "11110");
form.append("dealYmd", "202607");
form.append("propertyType", "apt");
form.append("numOfRows", "50");
const response = await fetch("https://apick.app/rest/rtms_trade", {
  method: "POST",
  headers: { Authorization: "Bearer " + process.env.APICK_API_KEY },
  body: form,
  signal: AbortSignal.timeout(120_000),
});
if (!response.ok) throw new Error(`HTTP ${response.status}: ${await response.text()}`);
const result = await response.json();
console.log(result);

```

### python

```python

import os
import requests
parts = [
    ("lawdCd", (None, "11110")),
    ("dealYmd", (None, "202607")),
    ("propertyType", (None, "apt")),
    ("numOfRows", (None, "50")),
]
response = requests.request("POST", "https://apick.app/rest/rtms_trade",
    headers={"Authorization": "Bearer " + os.environ["APICK_API_KEY"]},
    files=parts,
    timeout=(10, 120))
response.raise_for_status()
result = response.json()
print(result)

```

### php

```php

<?php
$headers = ["Authorization: Bearer " . getenv("APICK_API_KEY")];
$form = [
    'lawdCd' => '11110',
    'dealYmd' => '202607',
    'propertyType' => 'apt',
    'numOfRows' => '50',
];
$curl = curl_init('https://apick.app/rest/rtms_trade');
curl_setopt_array($curl, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_HTTPHEADER => $headers,
    CURLOPT_POSTFIELDS => $form,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CONNECTTIMEOUT => 10, CURLOPT_TIMEOUT => 120,
]);
$body = curl_exec($curl);
if ($body === false) { throw new RuntimeException(curl_error($curl)); }
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($status >= 400) { throw new RuntimeException($body); }
$result = json_decode($body, true, 512, JSON_THROW_ON_ERROR);
print_r($result);

```

## 코드·오류

## 상세 기능·요금

이용 전 확인 성공한 조회 한 건당 100P가 차감됩니다. 신고가 아직 없는 달이면 결과가 0건일 수 있으며, 그래도 조회가 성공하면 같은 요금이 적용됩니다. 지역코드는 법정동코드 앞 5자리입니다. 전체 10자리 주소 코드가 필요하면 먼저 주소·좌표 조회로 lawdCd를 확인하세요. 인증키는 서버 환경변수에 보관하고 공개 저장소·웹페이지에 넣지 마세요.

## 상세 요청

항목설정 메서드·주소POST https://apick.app/rest/rtms_trade 인증 헤더Authorization: Bearer — 내 계정의 API 인증키 본문 형식multipart/form-data 필수 항목lawdCd 지역코드 5자리(예: 11110), dealYmd 계약년월 YYYYMM(예: 202607) 선택 항목propertyType 부동산 유형(apt 아파트·rh 연립다세대·sh 단독다가구·offi 오피스텔, 기본 apt), pageNo 페이지(기본 1), numOfRows 결과 수(기본 10, 최대 1000) 요청 예시 서울 종로구 아파트의 매매 실거래가를 받는 예입니다. 성공 시 과금되는 실제 요청입니다. form-data 전체 예제 보기

## 상세 코드·정책

응답과 오류 복구 필드타입설명 data.items[]array실거래 항목입니다. 거래금액·전용면적·계약일·법정동·층 등 항목 이름은 원문 표기를 그대로 씁니다. data.totalCountinteger조건에 맞는 전체 건수입니다. data.pageNointeger이번 응답의 페이지 번호입니다. data.numOfRowsinteger이번 응답의 항목 수입니다. api.costinteger차감된 포인트입니다. 실패한 응답은 0입니다. api.msinteger처리 시간(밀리초)입니다. { "data": { "items": [], "totalCount": 0, "pageNo": 1, "numOfRows": 50 }, "api": { "cost": 100, "success": true, "ms": 460 } } 지역코드가 5자리가 아니거나 계약년월 형식이 맞지 않거나 유형 값이 잘못되면 조회 전에 data.error로 실패합니다. 실거래가 정보를 가져오지 못하면 공개 안내 문구가 오고 api.cost는 0입니다. 여러 달을 비교할 때는 월별로 나눠 조회하세요.
