AI Crawler · Collection Records

Bot summary · Last 24 hours
← Catalog
Ministry of Government Legislation (law.go.kr) · Korea Workers' Compensation & Welfare Service

Korean Court Precedent Full-Text API (MOLEG + KCOMWEL industrial-accident cases)

Locally built API exposing 35,161 precedents (30,814 with full judgment text), no key required. Provides case-name search (/api/prec?q=), full-text FTS (/api/prec/search?q=), detail (/api/prec/{case_id}), full text (/api/prec/{case_id}/text) and stats (/api/prec/stats). Use case_id as the primary identifier; case numbers may be duplicated.

⚡ Precedent search quick call

GET /api/prec/search?q=severance&limit=5

Use this first for precedent search. q = body FTS; case-name only: /api/prec?q=. No key required, 35,161 cases / 30,814 full texts. Use the returned case_id with /api/prec/{case_id}/text for the judgment text.

What agents get

  • case name, case number, court, decision date, category, holding, summary, referenced statutes, full judgment text, official source URL (law.go.kr precInfo)
    precedent search and citation for labor, real-estate and industrial-accident disputes

Use cases

  • search severance pay, unfair dismissal, lease and deposit-return precedents
  • cite judgment text and holdings
  • look up industrial accident and employment insurance precedents

Registered APIs (5)

Precedent list / case-name search prec_list

q is a case-name LIKE search; use prec_search for body search. Sorted by latest decision date.

  • q Optional — case-name substring e.g. lease
  • category Optional — 부동산 / 노동법 / 고용·산재 e.g. 노동법
  • court Optional e.g. Supreme Court
  • from Optional — decision date from (YYYY-MM-DD) e.g. 2025-01-01
  • to Optional — decision date to (YYYY-MM-DD) e.g. 2026-10-21
  • body Optional — only cases with full text e.g. 1
  • limit Optional — max 50 e.g. 20
  • offset Optional e.g. 0

Returns: total, items[](case_id, case_number, court, decision_date, date_known, case_name, category, body_status, text_len, data_source)

Rate limit: 86,400 calls/day (60 requests/min)

Judgment body FTS search prec_search

q is a body keyword (1-50 chars). count = items in this response, total = all matches. Trigram OR may include low-relevance hits.

  • q Required — body keyword e.g. severance pay
  • limit Optional — max 30 e.g. 10

Returns: count, total, items[](case_id, case_number, court, decision_date, date_known, case_name, category, body_status, snippet), cached

Rate limit: 86,400 calls/day (60 requests/min)

Precedent detail prec_detail

case_id first; a case number also resolves but may be duplicated.

  • case_id Required — numeric case_id or case number e.g. 606507

Returns: case_number, court, decision_date, date_known, category, holding, summary, referenced_laws, source_url, body_status, judgment_chars, endpoints{text_json,text_plain}

Rate limit: 86,400 calls/day (60 requests/min)

Judgment full text prec_text

404 body_not_available when the source does not provide the text. No display-length cap.

  • case_id Required e.g. 606507
  • format Optional — json or text e.g. json

Returns: case_id, case_number, court, decision_date, date_known, source_url, body_status, chars, text

Rate limit: 86,400 calls/day (60 requests/min)

Corpus stats prec_stats

counts, full-text coverage, characters, per-source counts

    Returns: cases, with_text, chars, last_collected_at, sources, db_size_bytes

    Rate limit: 86,400 calls/day (60 requests/min)

    Auth · pricing · terms

    Authnone — No key required. Served directly from the internal database.
    Pricingfree
    LicensePublic data: attribution required
    Redistributionallowed with attribution
    Terms checked2026-10-21
    ApplyNo key needed — call /api/prec directly Portal
    StatusActive
    Last checked2026-10-21

    How agents call

    Call through our proxy. Start with the keyless quick API shown above (no token needed). For the Korean law service, target=law is served from our internal law DB with no token. For the keyed proxy, send X-Agent-Token to POST /agencatalog/api/call with ('service', 'endpoint', 'params'). Token issuance is not self-service; see /agencatalog/register/. The full service list is at /agencatalog/api/services.json.

    Machine-readable JSON schema

    {
      "service": "prec-kr",
      "name": "Korean Court Precedent Full-Text API (MOLEG + KCOMWEL industrial-accident cases)",
      "provider": "Ministry of Government Legislation (law.go.kr) · Korea Workers' Compensation & Welfare Service",
      "apis": [
        {
          "id": "prec_list",
          "name": "Precedent list / case-name search",
          "params": [
            {
              "name": "q",
              "required": false,
              "example": "lease",
              "desc": "case-name substring"
            },
            {
              "name": "category",
              "required": false,
              "example": "노동법",
              "desc": "부동산 / 노동법 / 고용·산재"
            },
            {
              "name": "court",
              "required": false,
              "example": "Supreme Court"
            },
            {
              "name": "from",
              "required": false,
              "example": "2025-01-01",
              "desc": "decision date from (YYYY-MM-DD)"
            },
            {
              "name": "to",
              "required": false,
              "example": "2026-10-21",
              "desc": "decision date to (YYYY-MM-DD)"
            },
            {
              "name": "body",
              "required": false,
              "example": "1",
              "desc": "only cases with full text"
            },
            {
              "name": "limit",
              "required": false,
              "example": "20",
              "desc": "max 50"
            },
            {
              "name": "offset",
              "required": false,
              "example": "0"
            }
          ]
        },
        {
          "id": "prec_search",
          "name": "Judgment body FTS search",
          "params": [
            {
              "name": "q",
              "required": true,
              "example": "severance pay",
              "desc": "body keyword"
            },
            {
              "name": "limit",
              "required": false,
              "example": "10",
              "desc": "max 30"
            }
          ]
        },
        {
          "id": "prec_detail",
          "name": "Precedent detail",
          "params": [
            {
              "name": "case_id",
              "required": true,
              "example": "606507",
              "desc": "numeric case_id or case number"
            }
          ]
        },
        {
          "id": "prec_text",
          "name": "Judgment full text",
          "params": [
            {
              "name": "case_id",
              "required": true,
              "example": "606507"
            },
            {
              "name": "format",
              "required": false,
              "example": "json",
              "desc": "json or text"
            }
          ]
        },
        {
          "id": "prec_stats",
          "name": "Corpus stats",
          "params": []
        }
      ],
      "proxy_call": "POST /agencatalog/api/call",
      "attribution": "Source: law.go.kr (MOLEG) · KCOMWEL industrial-accident precedents"
    }

    Error handling

    All responses are JSON. On failure the proxy returns {"ok": false, "error": {"code", "message"}}. Handle by code:

    invalid_token403. Missing or invalid X-Agent-Token. Get a token via /agencatalog/register/ and resend with the header.
    throttle429. One-call-per-second limit exceeded. Wait retry_after seconds and retry sequentially (no parallel calls).
    agent_limit / institution_limit429. Daily quota exceeded. Resume after retry_after_seconds.
    upstream_limit429. The upstream provider returned an over-quota error. Retry later.
    unknown_service404. Unregistered service. Check the exact service/endpoint name in services.json.
    not_found404. Bad path. Confirm you use POST /agencatalog/api/call.

    Notes

    • API keys live only on the server. Clients asking for keys directly cannot use this route.
    • Each provider has a daily quota. Over-quota calls return 429 and are blocked.
    • Provider outages or over-quota errors are passed through. Check the error field before retrying.
    • Attribution: Source: law.go.kr (MOLEG) · KCOMWEL industrial-accident precedents

    Last checked: 2026-10-21