Appearance
nmc
국립중앙의료원(NMC) 병원 정보 API입니다. 병원 목록 조회와 기관 ID(hpid) 기반 상세 조회를 제공합니다.
접근 권한 안내
이 데이터는 정부데이터 원본(공공데이터포털)을 캐싱한 자료입니다. 현재는 공개되어 있으나, 추후 허가받은 사용자만 접근할 수 있도록 제한될 예정입니다.
특징
- 공공데이터포털의 데이터를 빠르게 접근할 수 있습니다.
- 필터 조건을 세분화하고 검색 성능을 개선했습니다.
데이터 출처
- 국립중앙의료원(NMC)에 등록된 정보입니다. — https://www.nmc.or.kr
- 대한민국 공공데이터포털에서 제공한 원본 데이터를 캐싱하여 제공합니다.
- 원본 데이터포털과 하루 한 번 재동기화됩니다.
데이터 정확성
데이터가 잘못된 경우, 원본 제공처(국립중앙의료원 또는 공공데이터포털)의 원본 데이터 오류일 수 있습니다.
TIP
- 값이 없는(null) 필드는 응답에서 생략됩니다.
병원 목록 조회
GET
/data-go-kr/nmc/hospitals
로컬 DB 에 미러링한 NMC 병원 목록. 응답 구조는 원본 API 와 동일하다.
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/hospitalsQuery Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
page | number | - | default 1 | 페이지 번호 |
size | number | - | min 1 · max 100 · default 20 | 페이지 크기 |
Response
200
NmcHospitalFullDownResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcHospitalFullDownResult | - |
NmcHospitalFullDownResult
| Field | Type | Required | Description |
|---|---|---|---|
header | NmcResultHeader | - | |
└─resultCode | string | - | 결과코드 (정상: 00) |
└─resultMsg | string | - | 결과메시지 |
body | NmcHospitalFullDownBody | - | |
└─numOfRows | integer | - | 한 페이지 결과 수 |
└─pageNo | integer | - | 현재 페이지 번호 |
└─totalCount | integer | - | 전체 결과 수 |
└─items | NmcHospitalFullDownItems | - | |
└─item | NmcHospitalFullDownItem[] | - | |
└─rnum | integer | - | 일련번호 |
└─hpid | string | - | 기관ID |
└─dutyName | string | - | 기관명 |
└─dutyAddr | string | - | 주소 |
└─dutyDiv | NmcDutyDiv | - | |
└─dutyDivNam | string | - | 병원분류명 |
└─dutyEmcls | string | - | 응급의료기관코드 |
└─dutyEmclsName | string | - | 응급의료기관코드명 |
└─dutyEryn | string | - | 응급실운영여부 (1:운영, 2:미운영) |
└─dutyEtc | string | - | 비고 |
└─dutyInf | string | - | 기관설명상세 |
└─dutyMapimg | string | - | 간이약도 |
└─dutyTel1 | string | - | 대표전화1 |
└─dutyTel3 | string | - | 응급실전화 |
└─postCdn1 | string | - | 우편번호1 |
└─postCdn2 | string | - | 우편번호2 |
└─wgs84Lon | string | - | 병원경도 |
└─wgs84Lat | string | - | 병원위도 |
└─dutyTime1s | string | - | 진료시간(월요일) 시작 |
└─dutyTime2s | string | - | 진료시간(화요일) 시작 |
└─dutyTime3s | string | - | 진료시간(수요일) 시작 |
└─dutyTime4s | string | - | 진료시간(목요일) 시작 |
└─dutyTime5s | string | - | 진료시간(금요일) 시작 |
└─dutyTime6s | string | - | 진료시간(토요일) 시작 |
└─dutyTime7s | string | - | 진료시간(일요일) 시작 |
└─dutyTime8s | string | - | 진료시간(공휴일) 시작 |
└─dutyTime1c | string | - | 진료시간(월요일) 종료 |
└─dutyTime2c | string | - | 진료시간(화요일) 종료 |
└─dutyTime3c | string | - | 진료시간(수요일) 종료 |
└─dutyTime4c | string | - | 진료시간(목요일) 종료 |
└─dutyTime5c | string | - | 진료시간(금요일) 종료 |
└─dutyTime6c | string | - | 진료시간(토요일) 종료 |
└─dutyTime7c | string | - | 진료시간(일요일) 종료 |
└─dutyTime8c | string | - | 진료시간(공휴일) 종료 |
└─sidoNm | string | - | 시도명 (예: 서울특별시). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 첫 토큰에서 계산한다. NMC 는 지역을 코드로 주지 않고 검색 파라미터(Q0)도 주소 문자열의 부분 일치라, 지역으로 검색·집계하려면 주소에서 뽑아내는 수밖에 없다. 축약 표기(서울)는 정식 명칭(서울특별시)으로 정규화한다. |
└─sgguNm | string | - | 시군구명 (예: 강남구). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 둘째 토큰에서 계산한다. 시 아래 구가 있으면 두 토큰을 합친다 (예: 수원시 팔달구). 세종특별자치시처럼 시군구가 없는 지역은 값이 없다. |
병원 상세 조회
GET
/data-go-kr/nmc/hospitals/{hpid}
기관ID 로 1건 조회. 없으면 items 가 빈 배열이고 totalCount 가 0 이다(원본 API 와 동일).
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/hospitals/{hpid}Path Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
hpid | string | 필수 | 기관ID |
Response
200
NmcHospitalFullDownResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcHospitalFullDownResult | - |
NmcHospitalFullDownResult
| Field | Type | Required | Description |
|---|---|---|---|
header | NmcResultHeader | - | |
└─resultCode | string | - | 결과코드 (정상: 00) |
└─resultMsg | string | - | 결과메시지 |
body | NmcHospitalFullDownBody | - | |
└─numOfRows | integer | - | 한 페이지 결과 수 |
└─pageNo | integer | - | 현재 페이지 번호 |
└─totalCount | integer | - | 전체 결과 수 |
└─items | NmcHospitalFullDownItems | - | |
└─item | NmcHospitalFullDownItem[] | - | |
└─rnum | integer | - | 일련번호 |
└─hpid | string | - | 기관ID |
└─dutyName | string | - | 기관명 |
└─dutyAddr | string | - | 주소 |
└─dutyDiv | NmcDutyDiv | - | |
└─dutyDivNam | string | - | 병원분류명 |
└─dutyEmcls | string | - | 응급의료기관코드 |
└─dutyEmclsName | string | - | 응급의료기관코드명 |
└─dutyEryn | string | - | 응급실운영여부 (1:운영, 2:미운영) |
└─dutyEtc | string | - | 비고 |
└─dutyInf | string | - | 기관설명상세 |
└─dutyMapimg | string | - | 간이약도 |
└─dutyTel1 | string | - | 대표전화1 |
└─dutyTel3 | string | - | 응급실전화 |
└─postCdn1 | string | - | 우편번호1 |
└─postCdn2 | string | - | 우편번호2 |
└─wgs84Lon | string | - | 병원경도 |
└─wgs84Lat | string | - | 병원위도 |
└─dutyTime1s | string | - | 진료시간(월요일) 시작 |
└─dutyTime2s | string | - | 진료시간(화요일) 시작 |
└─dutyTime3s | string | - | 진료시간(수요일) 시작 |
└─dutyTime4s | string | - | 진료시간(목요일) 시작 |
└─dutyTime5s | string | - | 진료시간(금요일) 시작 |
└─dutyTime6s | string | - | 진료시간(토요일) 시작 |
└─dutyTime7s | string | - | 진료시간(일요일) 시작 |
└─dutyTime8s | string | - | 진료시간(공휴일) 시작 |
└─dutyTime1c | string | - | 진료시간(월요일) 종료 |
└─dutyTime2c | string | - | 진료시간(화요일) 종료 |
└─dutyTime3c | string | - | 진료시간(수요일) 종료 |
└─dutyTime4c | string | - | 진료시간(목요일) 종료 |
└─dutyTime5c | string | - | 진료시간(금요일) 종료 |
└─dutyTime6c | string | - | 진료시간(토요일) 종료 |
└─dutyTime7c | string | - | 진료시간(일요일) 종료 |
└─dutyTime8c | string | - | 진료시간(공휴일) 종료 |
└─sidoNm | string | - | 시도명 (예: 서울특별시). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 첫 토큰에서 계산한다. NMC 는 지역을 코드로 주지 않고 검색 파라미터(Q0)도 주소 문자열의 부분 일치라, 지역으로 검색·집계하려면 주소에서 뽑아내는 수밖에 없다. 축약 표기(서울)는 정식 명칭(서울특별시)으로 정규화한다. |
└─sgguNm | string | - | 시군구명 (예: 강남구). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 둘째 토큰에서 계산한다. 시 아래 구가 있으면 두 토큰을 합친다 (예: 수원시 팔달구). 세종특별자치시처럼 시군구가 없는 지역은 값이 없다. |
코드마스터 목록 조회
GET
/data-go-kr/nmc/codes
로컬 DB 에 미러링한 NMC 코드마스터. 응답 구조는 원본 API 와 동일하다.
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/codesQuery Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
page | number | - | default 1 | 페이지 번호 |
size | number | - | min 1 · max 100 · default 20 | 페이지 크기 |
cmMid | string | - | 대분류코드(cmMid). 예: H010=설립구분. 생략하면 전체 코드를 반환한다. |
Response
200
NmcCodeInfoResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcCodeInfoResult | - |
NmcCodeInfoResult
| Field | Type | Required | Description |
|---|---|---|---|
header | NmcResultHeader | - | |
└─resultCode | string | - | 결과코드 (정상: 00) |
└─resultMsg | string | - | 결과메시지 |
body | NmcCodeInfoBody | - | |
└─numOfRows | integer | - | 한 페이지 결과 수 |
└─pageNo | integer | - | 현재 페이지 번호 |
└─totalCount | integer | - | 전체 결과 수 |
└─items | NmcCodeInfoItems | - | |
└─item | NmcCodeInfoItem[] | - | |
└─cmMid | string | - | 대분류코드 (예: H010) |
└─cmMnm | string | - | 코드명 (예: 설립구분) |
└─cmSid | string | - | 소분류코드 (예: F001) |
└─cmSnm | string | - | 코드약어 (예: 국립) |
지역 목록 조회
GET
/data-go-kr/nmc/regions
병원 데이터에서 집계한 시도·시군구 목록. 병원이 1건 이상 있는 지역만 나온다.
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/regionsQuery Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
page | number | - | default 1 | 페이지 번호 |
size | number | - | min 1 · max 100 · default 20 | 페이지 크기 |
Response
200
NmcRegionResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcRegionResult | 필수 |
NmcRegionResult
| Field | Type | Required | Description |
|---|---|---|---|
header | KrDataHeader | 필수 | |
└─resultCode | string | 필수 | 결과 코드. 정상은 00 |
└─resultMsg | string | 필수 | 결과 메시지 |
body | NmcRegionBody | 필수 | |
└─items | NmcRegionItems | 필수 | |
└─item | NmcRegionItem[] | 필수 | |
└─sidoNm | string | 필수 | 시도명 |
└─sgguNm | string | - | 시군구명. 세종특별자치시처럼 시군구가 없는 지역은 값이 없다. |
└─hospitalCount | number | 필수 | 이 지역의 병원 수 |
└─numOfRows | number | 필수 | 한 페이지 결과 수 |
└─pageNo | number | 필수 | 페이지 번호 |
└─totalCount | number | 필수 | 전체 결과 수 |
병원 진료과목 조회
GET
/data-go-kr/nmc/hospitals/{hpid}/subjects
해당 병원이 진료하는 과목 목록. 코드마스터 D000 기준이다.
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/hospitals/{hpid}/subjectsPath Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
hpid | string | 필수 | 기관ID |
Response
200
NmcSubjectResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcSubjectResult | 필수 |
NmcSubjectResult
| Field | Type | Required | Description |
|---|---|---|---|
header | KrDataHeader | 필수 | |
└─resultCode | string | 필수 | 결과 코드. 정상은 00 |
└─resultMsg | string | 필수 | 결과 메시지 |
body | NmcSubjectBody | 필수 | |
└─items | NmcSubjectItems | 필수 | |
└─item | NmcSubjectItem[] | 필수 | |
└─subjectCd | string | 필수 | 진료과목 코드 (코드마스터 D000) |
└─subjectNm | string | - | 진료과목명 |
└─numOfRows | number | 필수 | 한 페이지 결과 수 |
└─pageNo | number | 필수 | 페이지 번호 |
└─totalCount | number | 필수 | 전체 결과 수 |
달빛어린이병원 목록 조회
GET
/data-go-kr/nmc/baby-hospitals
로컬 DB 에 미러링한 달빛어린이병원·소아전문센터. 응답 구조는 원본 API 와 동일하다.
Request
🔒 Bearer 인증 필요 · 인증 방법GET
/data-go-kr/nmc/baby-hospitalsQuery Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
page | number | - | default 1 | 페이지 번호 |
size | number | - | min 1 · max 100 · default 20 | 페이지 크기 |
Response
200
NmcBabyHospitalListResponse
| Field | Type | Required | Description |
|---|---|---|---|
response | NmcBabyHospitalListResult | - |
NmcBabyHospitalListResult
| Field | Type | Required | Description |
|---|---|---|---|
header | NmcResultHeader | - | |
└─resultCode | string | - | 결과코드 (정상: 00) |
└─resultMsg | string | - | 결과메시지 |
body | NmcBabyHospitalListBody | - | |
└─numOfRows | integer | - | 한 페이지 결과 수 |
└─pageNo | integer | - | 현재 페이지 번호 |
└─totalCount | integer | - | 전체 결과 수 |
└─items | NmcBabyHospitalListItems | - | |
└─item | NmcHospitalListItem[] | - | |
└─rnum | integer | - | 일련번호 |
└─hpid | string | - | 기관ID |
└─dutyName | string | - | 기관명 |
└─dutyAddr | string | - | 주소 |
└─dutyDiv | NmcDutyDiv | - | |
└─dutyDivNam | string | - | 병원분류명 |
└─dutyEmcls | string | - | 응급의료기관코드 |
└─dutyEmclsName | string | - | 응급의료기관코드명 |
└─dutyEryn | string | - | 응급실운영여부 (1:운영, 2:미운영) |
└─dutyEtc | string | - | 비고 |
└─dutyInf | string | - | 기관설명상세 |
└─dutyMapimg | string | - | 간이약도 |
└─dutyTel1 | string | - | 대표전화1 |
└─dutyTel3 | string | - | 응급실전화 |
└─postCdn1 | string | - | 우편번호1 |
└─postCdn2 | string | - | 우편번호2 |
└─wgs84Lon | string | - | 병원경도 |
└─wgs84Lat | string | - | 병원위도 |
└─dutyTime1s | string | - | 진료시간(월요일) 시작 |
└─dutyTime2s | string | - | 진료시간(화요일) 시작 |
└─dutyTime3s | string | - | 진료시간(수요일) 시작 |
└─dutyTime4s | string | - | 진료시간(목요일) 시작 |
└─dutyTime5s | string | - | 진료시간(금요일) 시작 |
└─dutyTime6s | string | - | 진료시간(토요일) 시작 |
└─dutyTime7s | string | - | 진료시간(일요일) 시작 |
└─dutyTime8s | string | - | 진료시간(공휴일) 시작 |
└─dutyTime1c | string | - | 진료시간(월요일) 종료 |
└─dutyTime2c | string | - | 진료시간(화요일) 종료 |
└─dutyTime3c | string | - | 진료시간(수요일) 종료 |
└─dutyTime4c | string | - | 진료시간(목요일) 종료 |
└─dutyTime5c | string | - | 진료시간(금요일) 종료 |
└─dutyTime6c | string | - | 진료시간(토요일) 종료 |
└─dutyTime7c | string | - | 진료시간(일요일) 종료 |
└─dutyTime8c | string | - | 진료시간(공휴일) 종료 |
└─sidoNm | string | - | 시도명 (예: 서울특별시). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 첫 토큰에서 계산한다. NMC 는 지역을 코드로 주지 않고 검색 파라미터(Q0)도 주소 문자열의 부분 일치라, 지역으로 검색·집계하려면 주소에서 뽑아내는 수밖에 없다. 축약 표기(서울)는 정식 명칭(서울특별시)으로 정규화한다. |
└─sgguNm | string | - | 시군구명 (예: 강남구). **원본 API 가 주지 않는 파생 필드다.** dutyAddr 의 둘째 토큰에서 계산한다. 시 아래 구가 있으면 두 토큰을 합친다 (예: 수원시 팔달구). 세종특별자치시처럼 시군구가 없는 지역은 값이 없다. |