AI 에이전트가 직접 조회하는 한국 법령 API — 5,628개 법령을 키 없이 검색하는 법
AI 에이전트가 "주택임대차보호법 제6조에 뭐라고 돼 있냐"고 물었을 때 대답할 수 있는가. 대부분의 에이전트는 모른다. 한국 법령 데이터는 공식 API가 존재하지만 인증키 발급 절차를 거쳐야 하고, 응답이 XML이라 그대로 쓰기 어렵다.
그래서 이 API를 만들었다. 법제처 국가법령정보센터의 현행 법령을 전부 내려받아 자체 서버에 저장해 두고, 에이전트가 인증키 없이 바로 조회할 수 있게 한 것이다.
법률 해석이나 상담은 하지 않는다. 원문과 메타데이터만 준다. 해석과 분석은 각 에이전트가 한다.
어떤 데이터가 들어 있나
- 현행 법령 5,628건 — 법률·대통령령·총리령·부령 전부
- 조문 224,684행 — 항·호·목까지 중첩 구조로 보존
- 부칙 93,159행
- 공포일·시행일·개정구분·소관부처·법령명(한글/한자) 등 메타데이터 19개 필드
원문 XML은 gzip 압축 원문 그대로 저장한다. 파싱한 결과와 원본 바이트를 함께 갖고 있어 sha256으로 무결성을 확인할 수 있다.
데이터는 법제처에서 직접 받아오고, 월 1회 자동으로 갱신한다. 법령이 개정되면 공포일자를 대조해 바뀐 것만 다시 받아온다.
호출 방법
모든 엔드포인트는 GET이고 인증키가 필요 없다. 아래는 실제 운영 중인 주소다.
GET /api/law/search?q=임대차&limit=10
GET /api/law/articles?q=대항력&limit=10
GET /api/law/{mst}
GET /api/law/{mst}/article/{n}
GET /api/law/{mst}/text?format=xml
GET /api/law/{mst}/addendum
GET /api/law/freshness
GET /api/law?type=법률&limit=20
{mst}는 법령 고유 번호다. 법령명을 모른다면 /api/law/search 로 먼저 찾으면 된다. /api/law/search 는 법령 단위, /api/law/articles 는 조문 단위 검색이다.
응답 예제
1. 법령 검색 — /api/law/search?q=임대차&limit=2
{
"q": "임대차",
"total": 816,
"items": [
{"mst": "279651", "name_ko": "상가건물 임대차보호법", "type": "법률", "ministry": "법무부",
"snippet": "상가건물 <b>임대차</b>보호법"},
{"mst": "276291", "name_ko": "주택임대차보호법", "type": "법률", "ministry": "법무부",
"snippet": "주택<b>임대차</b>보호법"}
],
"attribution": "법제처 국가법령정보센터",
"disclaimer": "본 서비스는 법령 원문과 메타데이터만 제공하며, 법률 해석·상담은 하지 않습니다."
}
한국어 부분 문자열 검색을 위해 SQLite FTS5 trigram 토크나이저를 쓴다. 조사나 공백을 나누지 않아도 임대차, 주택임대 같은 접두 검색이 그대로 먹힌다.
2. 조문 검색 — /api/law/articles?q=대항력&limit=2
법령 제목이 아니라 조문 본문·호·목까지 뒤져서 개별 조문을 돌려준다.
{
"q": "대항력",
"total": 31,
"limit": 2,
"items": [
{"mst": "287183", "name_ko": "주택임대차보호법 시행령", "art_no": 2, "branch": 0,
"article_label": "제2조", "article_url": "/api/law/287183/article/2",
"snippet": "제2조(<b>대항력</b>이 인정되는 법인) …"},
{"mst": "284415", "name_ko": "민법", "art_no": 622, "branch": 0,
"article_label": "제622조", "article_url": "/api/law/284415/article/622",
"snippet": "…는 차지권의 <b>대항력</b>) 건물등기있는…"}
],
"attribution": "법제처 국가법령정보센터"
}
각 항목에 article_label(제622조)과 article_url(바로 조회할 주소)이 함께 온다. "보증금의 회수" 로 검색하면 주택임대차보호법 제3조의2가 나온다. 조문 본문뿐만 아니라 호·목 텍스트도 검색 대상이다.
3. 상세 — /api/law/276291
{
"mst": "276291",
"name_ko": "주택임대차보호법",
"type": "법률",
"ministry": "법무부",
"prom_date": "20251001",
"eff_date": "20260102",
"revision": "타법개정",
"raw_sha256": "9c1e...",
"article_count": 42,
"articles": [
{"no": "1", "branch": "", "title": "목적", "eff_date": "20260102"},
{"no": "3", "branch": "", "title": "대항력 등", "eff_date": "20260102"},
{"no": "3", "branch": "2", "title": "보증금의 회수", "eff_date": "20260102"}
]
}
revision은 타법개정, 법령개정, 신법 중 하나다. 시행예정일이 아닌 현재 시행일이 들어간다.
4. 조문 단위 — /api/law/276291/article/3
{n}은 조번호(제N조) 다. 제3조의2 같은 지조문은 ?branch=2 로 조회한다.
{
"mst": "276291",
"article_no": 3,
"art_no": "3",
"branch": 0,
"title": "대항력 등",
"eff_date": "20260102",
"body": "제3조(대항력 등)",
"items": [
{"no": "①", "text": "임차인은 임대차의 존속기간이 끝나기 전에 소유권을 취득한 자에 대하여 ...",
"hos": []}
],
"branches": [
{"branch": 0, "label": "제3조", "article_url": "/api/law/276291/article/3"},
{"branch": 2, "label": "제3조의2", "article_url": "/api/law/276291/article/3?branch=2"}
]
}
항 안에 호가 있으면 hos 배열에 들어온다. 원문 XML의 <개정 2015.1.6> 같은 태그도 훼손 없이 보존된다. branches 배열로 같은 조번호의 지조문 목록을 얻을 수 있다.
5. 원문 — /api/law/276291/text?format=xml
파싱하지 않은 원문 XML을 그대로 준다. format=json 을 쓰면 조문·항·호 구조가 풀린 형태로 나온다.
6. 최신성 — /api/law/freshness
{
"total_laws": 5628,
"total_articles": 224684,
"total_addenda": 93159,
"last_updated": "2026-10-15T16:26:14+09:00",
"attribution": "법제처 국가법령정보센터"
}
에이전트가 "이 데이터가 얼마나 최신이냐"고 확인할 때 쓴다.
에이전트가 알아둘 것
한국어 검색은 URL 인코딩이 필수다. curl 에 한글을 그냥 넣으면 임대차 를 이대차 로 읽을 수 있다.
curl -G --data-urlencode "q=임대차" "https://cursorai.co.kr/api/law/search"
원문은 무변경이다. 법제처 저작권 정책상 출처표시를 지키고 위조·변조하지 않으면 자유롭게 이용할 수 있다. 그래서 원문 XML은 압축 원본 그대로 두고 sha256 을 같이 준다.
법률 해석은 하지 않는다. 모든 응답에 disclaimer 가 붙어 있다. 법령 원문을 읽고 판단하는 것은 사용자와 에이전트의 몫이다.
조문 단위 검색이 된다. /api/law/articles?q= 는 조문 본문과 호·목까지 뒤진다. 다만 자연어 구를 그대로 이해하지는 않으므로, 보증금 반환 같은 표현은 보증금·회수 처럼 핵심 명사로 나눠 검색하는 편이 낫다.
남은 한계
- 과거 버전 전문은 아직 제공하지 않는다. 개정 이력 API를 검증한 뒤 열 계획이다.
- 별표·서식은 본문에 포함되지 않는다. 공식 다운로드 링크만 노출한다.
- 갱신은 월 1회다. 최신성이 필수인 용도에는 맞지 않으니
/freshness를 먼저 확인하자.
출처: 법제처 국가법령정보센터 (law.go.kr)
법령 원문과 메타데이터만 제공하는 서비스다. 법률 상담이나 해석을 대신하지 않는다.
AI Knowledge Hub
방문자 댓글