SuperAPI AI Directory

data-court-auction

Data & analytics

View repository

Updated 10-15 21:33

About this skill

Court auction sale notice lookup

Operated by the Supreme Court, the official court auction information(courtauction.go.kr) sale notices and case information are converted to JSON and returned. Used for asset disposal, auction investment, and due diligence review.

This skill ports NomaDamas k-skill court-auction-notice-search (MIT) to cowork. Since there is no official OPEN API, it directly calls the site's internal WebSquare JSON XHR endpoint.

Mandatory honest framing — facts that must always be told to the user

  1. The data is a direct copy of public information from the court auction information site, and before actual bidding, re-verify the original court text.
  2. The site is very sensitive to automated calls, so rapid consecutive queries may result in the IP being blocked for 1 hour.
  3. Price (appraised value, minimum sale price), sale date, and sale location are based on the time of the noticeand may change due to correction, withdrawal, or postponement (seecorrectionCount, cancellationCount ).
  4. This skill is read-only. Bidding itself is not automated.

Throttling — very important

  • Between calls, at least 2 seconds delay (default). To increase further, --min-delay-ms 3000.
  • default session call budget 10회. If exceeded, use a new session or maxCallsPerSession explicitly increase.
  • If you encounter a block (data.ipcheck === false), BLOCKED immediately throw an error and stop (no automatic retry — risk of extending the block).
  • A blocked IP after about 1 hour recovers naturally. In the meantime, work from another IP/network, or the user accesses the site via browser and goes through the unblock screen.

When to use / When not to use

Usage: sale notices by date, single-case lookup by case number, court office code table lookup, expand sale notice.

Do not use: movable property (vehicles, heavy equipment) auctions (outside v1 scope), free condition search (region, usage, price range, area, number of failed bids), all court schedules by date at once, sale item photo URLs, sale item statement/status survey/appraisal report PDF downloads, automatic bid form creation and automatic submission (never supported).

Inputs

  • date: sale date month (YYYYMM/YYYY-MM) or specific day (YYYYMMDD/YYYY-MM-DD). Required.
  • courtCode: court office code (e.g., B000210 = Seoul Central District Court). If empty, all.
  • bidType: date(date bidding, 000331) | period(period bidding, 000332) | empty (both).
  • caseNumber: case number. 2024타경100001 recommended. 2024-100001is also normalized.

Endpoints (direct calls to site internals)

  • POST /pgj/pgj143/selectRletDspslPbanc.on — sale notice list
  • POST /pgj/pgj143/selectRletDspslPbancDtl.on — Sale Notice Details (Expand Cases/Items)
  • POST /pgj/pgj15A/selectAuctnCsSrchRslt.on — Single Case Lookup
  • POST /pgj/pgjComm/selectCortOfcCdLst.on — All Court Office Codes

The primary transport is direct HTTP, and only upon blocking or 5xx rebrowser-playwright or playwright-core fallback.

Workflow A — Sale Notice → Expand Cases/Items

  1. Receives the sale date (YYYY-MM-DD) and (optionally) the court/bid category from the user.
  2. searchSaleNotices({ date, courtCode, bidType }) → Sale notice card list.
  3. Pass the card object (or raw) as is to getSaleNoticeDetail(notice).
  4. The response's items[]가 caseNumber, usage, address, appraisedPrice, minimumSalePrice, remarkshas .
  5. Prices are integers in KRW. When displaying to the user, use Korean-style thousands separators + conversion to hundred-million/ten-thousand units.

Workflow B — Single Case Number Lookup

  1. Receives the court office code + case number (e.g., 2024타경100001).
  2. getCaseByCaseNumber({ courtCode, caseNumber }) Call.
  3. found:false / status:204 → Case does not exist or is non-public. Recheck the format and court.
  4. found:true → caseInfo(Case name, receipt date, claim amount, presiding judge, progress status), items[](Sale object, address, dividend demand deadline), schedule[](Minimum price, appraised value, result per sale date), claimDeadline, relatedCases, stakeholders.

Run helper

This skill includes a Node.js example script that calls the npm package court-auction-notice-search(NomaDamas/k-skill original) in scripts/court_auction_example.js. Direct CLI use is also possible.

# 사전 설치
npm i court-auction-notice-search

# 1. 법원사무소 코드표
court-auction-notice-search codes courts --pretty | head -40

# 2. 입찰구분 (정적 코드)
court-auction-notice-search codes bid-types --pretty

# 3. 매각공고 목록
court-auction-notice-search notices \
  --date 2026-04 --court-code B000210 --bid-type date --pretty

# 4. 사건번호 단건 조회
court-auction-notice-search case \
  --court-code B000210 --case-number "2024타경100001" --pretty

# 5. 통합 예시 (Node.js)
node scripts/court_auction_example.js

Error handling

Error Code Meaning Response
BLOCKED data.ipcheck === false After waiting 1 hour, retry from a different IP
BUDGET_EXCEEDED Session budget exceeded Intentional safeguard. If needed, --max-calls 20
UPSTREAM_ERROR General site error Session expired/invalid jdbnCd. Restart from warmup
NETWORK_ERROR Timeout/connection failure Check network
PLAYWRIGHT_UNAVAILABLE No fallback module npm i rebrowser-playwright or playwright-core

Response policy

  • On the first response, IP blocking risk과 "For reference only · Reconfirm the original court text before actual bidding" Attach this notice.
  • Present prices as integers in KRW + conversion to hundred-million/ten-thousand units together.
  • If blocking occurs, do not automatically retry; stop immediately and inform the user.
  • After the task, inform the user of the remaining call budget to clarify room for additional calls.

Related Skill Chaining

  • before: moai-analyst:data-realestate — Property market price comparison (nearby actual transaction prices)
  • after: moai-accountant:finance-financial-statements — Auction investment feasibility analysis
  • after: moai-coworker:collab-exec-summary — Auction candidate 1-pager
  • after: moai-officer:doc-xlsx — Batch Excel export of sale notices

Done when

  • Noted the IP blocking risk and the "For reference only · Reconfirm the original court text before actual bidding" notice.
  • Expanded the sale notice and returned caseNumber/usage/address/appraisedPrice/minimumSalePrice JSON.
  • When looking up the case number directly, guided follow-up actions for when found:falseit is.
  • If blocking occurred, did not automatically retry and stopped immediately.
  • Informed the user of the remaining call budget.