| name | korean-heritage-search |
| description | Search official Korean national heritage records, details, locations, and monthly heritage events from the Korea Heritage Service Open API. |
| license | MIT |
| metadata | {"category":"history","locale":"ko-KR","phase":"v1"} |
ํ๊ตญ ๊ตญ๊ฐ์ ์ฐ ๊ฒ์
What this skill does
๊ตญ๊ฐ์ ์ฐ์ฒญ(ํ ๊ตญ๊ฐ์ ์ฐ์ฒญ ์๋ฌธ Korea Heritage Service)์ ๊ณต์ Open API์์ ๊ตญ๊ฐ์ ์ฐ ๋ชฉ๋กยท์์ธ์ ๋ณด์ ์๋ณ ๊ตญ๊ฐ์ ์ฐ ํ์ฉ ํ์ฌ๋ฅผ ์กฐํํ๋ค.
v1์ ๊ณต์ XML API๋ฅผ ์ง์ ํธ์ถํ๋ฉฐ, ๋ณ๋ API keyยท๋ก๊ทธ์ธยทํ๋ก์๊ฐ ํ์ ์๋ค.
- ๊ตญ๊ฐ์ ์ฐ๋ช
ยท์ง์ญ ๊ธฐ์ค ๊ฒ์
- ๊ตญ๊ฐ์ ์ฐ ์์ธ ์ค๋ช
ยท์ฃผ์ยท์ขํยท์ด๋ฏธ์ง ์กฐํ
- ์ฐ๋ยท์๋ณ ๊ตญ๊ฐ์ ์ฐ ํ์ฌ ์กฐํ
When to use
- "๊ฒฝ๋ณต๊ถ ๊ด๋ จ ๊ตญ๊ฐ์ ์ฐ ์ฐพ์์ค"
- "์์ธ ๊ตญ๋ณด ๋ชฉ๋ก ๋ณด์ฌ์ค"
- "์ญ๋ก๋ฌธ ์ญ์ฌ์ ์ฃผ์ ์๋ ค์ค"
- "์ด๋ฒ ๋ฌ ๊ตญ๊ฐ์ ์ฐ ํ์ฌ ์๋ ค์ค"
- "์ ์ฃผ ์ง์ญ ๊ตญ๊ฐ์ ์ฐ์ ๊ฒ์ํด์ค"
When not to use
- ํ์ฌ ์
์ฅ ๊ฐ๋ฅ ์ฌ๋ถ, ์ด์์๊ฐ, ์
์ฅ๋ฃ๋ฅผ ํ์ ํด์ผ ํ๋ ๊ฒฝ์ฐ
- ์ค์๊ฐ ํต์ ยทํผ์ก๋ยท์ฃผ์ฐจ ๊ฐ๋ฅ ์ฌ๋ถ๊ฐ ํ์ํ ๊ฒฝ์ฐ
- ์๋งคยท๊ฒฐ์ ยทํ์ฌ ์ ์ฒญ์ ์๋ํํด์ผ ํ๋ ๊ฒฝ์ฐ
Prerequisites
- ์ธํฐ๋ท ์ฐ๊ฒฐ
- Python 3.10+
- ์ค์น๋ skill payload ์์
scripts/korean_heritage_search.py helper๊ฐ ํฌํจ๋์ด ์๋ค.
- ๋ณ๋ API key๋ ๋ก๊ทธ์ธ์ ํ์ ์๋ค.
Inputs
Search
- ์ ํ: ๊ตญ๊ฐ์ ์ฐ๋ช
๊ฒ์์ด
- ์ ํ: ์๋๋ช
๋๋ ์๋ ์ฝ๋
- ์ ํ: ํ์ด์ง ๋ฒํธ
- ์ ํ: ๊ฒฐ๊ณผ ์(1~100)
์ง์ ์ง์ญ๋ช
: ์์ธ, ๋ถ์ฐ, ๋๊ตฌ, ์ธ์ฒ, ๊ด์ฃผ, ๋์ , ์ธ์ฐ, ๊ฒฝ๊ธฐ, ๊ฐ์, ์ถฉ๋ถ, ์ถฉ๋จ, ์ ๋ถ, ์ ๋จ, ๊ฒฝ๋ถ, ๊ฒฝ๋จ, ์ ์ฃผ, ์ธ์ข
.
Detail
๋ชฉ๋ก ๊ฒฐ๊ณผ์์ ๋ฐ์ ๋ค์ ์ธ ์๋ณ์๊ฐ ํ์ํ๋ค.
ccbaKdcd
ccbaAsno
ccbaCtcd
Events
- ํ์: ์ฐ๋(
YYYY)
- ํ์: ์(
1~12)
- ์ ํ: ์๋๋ช
ยท์๊ตฐ๊ตฌ๋ช
๋ถ๋ถ ํํฐ
Workflow
- ๊ตญ๊ฐ์ ์ฐ๋ช
๊ณผ ์ง์ญ์ ํ์ธํ๋ค. ๋ชจํธํ ์์ฒญ์ด๋ฉด ๋จผ์ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์์ธ ๋์์ ์ ํํ๊ฒ ํ๋ค.
- ๊ณต์
SearchKindOpenapiList.do์์ ๋ชฉ๋ก์ ์กฐํํ๋ค.
- ๋ชฉ๋ก ๊ฒฐ๊ณผ์
ccbaKdcd, ccbaAsno, ccbaCtcd๋ฅผ ์ฌ์ฉํด SearchKindOpenapiDt.do ์์ธ๋ฅผ ์กฐํํ๋ค.
- ํ์ฌ ์์ฒญ์ด๋ฉด
selectEventListOpenapi.do์ ์ฐ๋ยท์์ ๋ฃ๊ณ , ๋ฐํ๋ ์ง์ญยท๊ธฐ๊ฐยทํ์ฌ๋ช
ยท๊ณต์ ๋งํฌ๋ฅผ ์ ๋ฆฌํ๋ค.
- ๊ฒฐ๊ณผ์ ๊ณต์ ์ถ์ฒ URL๊ณผ ์กฐํ ์๊ฐ์ ํฌํจํ๋ค.
- ์
์ฅ๋ฃยท์ด์์๊ฐยทํ์ฌ ํ์ฌ ์งํ ์ฌ๋ถ์ฒ๋ผ ๋ณ๋ ๊ฐ๋ฅ์ฑ์ด ์๋ ์ ๋ณด๋ ์์ธ API์ ์ฌ์ค๊ณผ ๋ณ๋๋ก ํ์ํ๊ณ , ๊ณต์ ์๋ด ํ์ด์ง๋ฅผ ํ์ธํ๋๋ก ์๋ดํ๋ค.
CLI examples
python3 scripts/korean_heritage_search.py search --query "๊ฒฝ๋ณต๊ถ" --region ์์ธ --limit 5
python3 scripts/korean_heritage_search.py search --region ์ ๋ถ --limit 10
python3 scripts/korean_heritage_search.py detail --ccba-kdcd 11 --ccba-asno 0000010000000 --ccba-ctcd 11
python3 scripts/korean_heritage_search.py events --year 2026 --month 7 --region ์์ธ --limit 10
Response policy
- ๊ตญ๊ฐ์ ์ฐ๋ช
, ์ ํ, ์ง์ญ, ์ฃผ์, ์ขํ, ์ง์ ์ผ, ์ค๋ช
, ๊ด๋ฆฌ๊ธฐ๊ด์ ๊ณต์ ์๋ต ๊ทธ๋๋ก ์์ฝํ๋ค.
- ์์ธ ์กฐํ์์ ๋ฐ์
content๋ ์ญ์ฌ ์ค๋ช
์ผ๋ก ํ์ํ๊ณ , ํ์ฌ ์ด์ ์ํ๋ก ํด์ํ์ง ์๋๋ค.
- ํ์ฌ ์๋ต์
subContent๋ HTML์ ์ ๊ฑฐํ ํ
์คํธ๋ก ์ ๋ฆฌํ๋, ์๋ฌธ ๋งํฌ(subPath)๋ฅผ ํจ๊ป ์ ๊ณตํ๋ค.
- ๊ฒฐ๊ณผ๊ฐ ์์ผ๋ฉด ๋ค๋ฅธ ๊ตญ๊ฐ์ ์ฐ๋ช
ํ๊ธฐ๋ ์ง์ญ ์กฐ๊ฑด์ ์ ์ํ๋ค.
- API์ ์๋ ์
์ฅ๋ฃยท์ด์์๊ฐยทํต์ ์ํ๋ฅผ ์ถ์ ํ์ง ์๋๋ค.
Done when
- ๊ฒ์ ์์ฒญ์ด๋ฉด ๊ณต์ ๋ชฉ๋ก ๊ฒฐ๊ณผ์
total_results๊ฐ ์ ๋ฆฌ๋์ด ์๋ค.
- ์์ธ ์์ฒญ์ด๋ฉด ๊ณต์ ์๋ณ์์ ์ค๋ช
ยท์ฃผ์ยท์ขํยท์ด๋ฏธ์ง๊ฐ ์ ๋ฆฌ๋์ด ์๋ค.
- ํ์ฌ ์์ฒญ์ด๋ฉด ์ฐ๋ยท์, ํ์ฌ๋ช
, ๊ธฐ๊ฐ, ์ง์ญ, ๊ณต์ ๋งํฌ๊ฐ ์ ๋ฆฌ๋์ด ์๋ค.
- ์๋ต์ ๊ณต์ ์ถ์ฒ์ ์กฐํ ์๊ฐ์ด ํฌํจ๋์ด ์๋ค.
Failure modes
- ๊ตญ๊ฐ์ ์ฐ๋ช
ยท์ง์ญ ์กฐ๊ฑด์ ํด๋นํ๋ ๊ฒฐ๊ณผ๊ฐ ์์
ccbaKdcd, ccbaAsno, ccbaCtcd ์กฐํฉ์ด ์ ํจํ์ง ์์
- ๊ตญ๊ฐ์ ์ฐ์ฒญ API์ ์ผ์์ timeout, HTTP ์ค๋ฅ, XML ์ค๋ฅ
- ํ์ฌ ๋ฐ์ดํฐ์ ์ค๋ช
HTML ๋๋ ๊ธฐ๊ฐ ๋ฌธ์์ด์ด ๋ถ์์ ํจ
- ์ค๋๋ API ์๋ต์ผ๋ก ์ด๋ฏธ์ง URL ๋๋ ์ผ๋ถ ํ๋๊ฐ ๋น์ด ์์
Notes
- ๋ชฉ๋ก API:
https://www.khs.go.kr/cha/SearchKindOpenapiList.do
- ์์ธ API:
https://www.khs.go.kr/cha/SearchKindOpenapiDt.do
- ํ์ฌ API:
https://www.khs.go.kr/cha/openapi/selectEventListOpenapi.do
- ๊ณต์ Open API ์๋ด:
https://www.khs.go.kr/html/HtmlPage.do?mn=NS_04_04_03&pg=%2Fpublicinfo%2Fpbinfo3_0201.jsp
- ์ด ๊ธฐ๋ฅ์ ๊ฒ์ยท์กฐํ ์ ์ฉ์ด๋ฉฐ ์์ฝ, ๊ฒฐ์ , ์ ์ฒญ์ ์ํํ์ง ์๋๋ค.