Maps 서비스를 사용하는 데 필요한 API를 설명합니다.
환경 | 도메인 |
---|---|
Real | https://kr1-maps.api.nhncloudservice.com |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
}
}
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/coordinates?query={query}&coordtype={coordtype}&startposition={startposition}&reqcount={reqcount}&admcode={admcode} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
query | String | 필수 | 검색어 | |
coordtype | String | 선택 | 좌표 형식 0 : TW 좌표 1 : WGS84 좌표 2 : TM 좌표 |
|
startposition | String | 선택 | 검색 시작 위치 0 : 첫번째 위치 미입력 시 0으로 조회 |
|
reqcount | String | 선택 | 검색 요청 개수 0으로 설정 시 Max Count 반환 |
|
admcode | String | 선택 | 행정코드 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"address": {
"result": true,
"totalcount": 2,
"admtotalcount": 2,
"admcount": 2,
"res_type": "NNYN",
"adm": [
{
"type": 2,
"posx": "168425",
"posy": "516725",
"admcode": "4113510800",
"jibun": "",
"address": "경기도 성남시 분당구 판교동",
"roadname": "",
"roadjibun": "",
"accuracy": 3
},
{
"type": 2,
"posx": "167300",
"posy": "515526",
"admcode": "4113511000",
"jibun": "",
"address": "경기도 성남시 분당구 백현동(판교동)",
"roadname": "",
"roadjibun": "",
"accuracy": 3
}
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
address | Object | 본문 영역 |
address.result | Boolean | 성공 여부 |
address.totalcount | Integer | 전체 검색 결과 대상 개수 |
address.res_type | String | 검색 결과Type명칭 명칭, 카테고리, 주소, 전화번호 순 (예) NYNN : 명칭 No, 카테고리 YES, 주소 NO, 전화번호 NO |
address.adm | Array | 검색결과 |
address.adm[0].type | String | 검색 type 1 : 행정계 검색 2 : 지번 검색 3 : 새주소 검색 |
address.adm[0].posx | String | X 좌표 |
address.adm[0].posy | String | Y 좌표 |
address.adm[0].admcode | String | 행정코드 |
address.adm[0].address | String | 주소 |
address.adm[0].roadname | String | 새주소 도로명 |
address.adm[0].roadjibun | String | 새주소 지번 |
address.adm[0].accuracy | Integer | 지번 정확도 0 : 정확 검색 1 : 호지번 확장 예) 963-2 검색 시 963-X 검색 결과 반환 2 : 모지번 확장 예) 963-2 검색 시 96X 검색 결과 반환 3 : 법정동 동좌표 예) 삼평동 까지만 입력 되는 경우 4 : 동단위 이상 좌표 또는 법정동 좌표 예) 분당구까지만 입력 되는 경우 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/addresses?query={query}&posX={posX}&posY={posY}&coordtype={coordtype} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
posX | String | 필수 | X 좌표 | |
posY | String | 필수 | Y 좌표 | |
coordtype | String | 선택 | 요청 좌표 형식 0 : TW 좌표 1 : WGS84 좌표 미 입력 시 TW 좌표 기준 검색 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"location": {
"result": true,
"adm": {
"posx": "168434",
"posy": "516700",
"admcode": "4113511000",
"address": "경기도 성남시 분당구 백현동",
"jibun": "519-7",
"roadname": "",
"roadjibun": "",
"distance": 25
}
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
location | Object | 본문 영역 |
location.result | Boolean | 성공 여부 |
location.adm | Object | 검색 결과 |
location.adm.posx | String | X 좌표 |
location.adm.posy | String | Y 좌표 |
location.adm.admcode | String | 행정코드 |
location.adm.address | String | 주소 |
location.adm.jibun | String | 지번 |
location.adm.roadname | String | 새주소 도로명 |
location.adm.roadjibun | String | 새주소 지번 |
location.adm.distance | Integer | 좌표와의 거리(해당될 때만) |
location.adm.accuracy | String | 지번 정확도 0 : 정확 검색 1 : 호지번 확장 예) 963-2 검색 시 963-X 검색 결과 반환 2 : 모지번 확장 예) 963-2 검색 시 96X 검색 결과 반환 3 : 법정동 동좌표 예) 삼평동까지만 입력 되는 경우 4 : 동 단위 이상 좌표 또는 법정동 좌표 예) 분당구까지만 입력되는 경우 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/searches&query={query}&coordtype&startposition={startposition}&reqcount={reqcount}&spopt={spopt}&radius={radius}&admcode={admcode}&depth={depth}&x1={x1}&y1={y1}&x2={x2}&y2={y2}&sortopt={sortopt}&catecode={catecode} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
query | String | 필수 | 검색어 | |
coordtype | String | 선택 | 좌표 형식 0 : TW 좌표 1 : WGS84 좌표 2 : TM 좌표 |
|
startposition | String | 선택 | 검색 시작 위치 0 : 첫번째 위치, 미입력 시 0으로 조회 |
|
reqcount | String | 선택 | 검색 요청 개수 0으로 설정 시 Max Count 반환 |
|
spopt | String | 선택 | 공간 검색 옵션 0 : 공간 검색 사용 안 함 1 : Extent 검색 2 : Range 검색 *spopt값이 설정되지 않은 경우 0으로 설정 |
|
radius | String | 선택 | 반경 spopt가 2인 경우 사용 미터 단위 |
|
admcode | String | 선택 | 행정코드 | |
depth | String | 선택 | 하위 시설물 요구 수준 1 : 1 depth 만 요청(최상위 depth) 2 : 2 depth 까지 요청 3 : 3 depth 까지 요청 depth값이 설정되지 않은 경우 1로 설정 depth 설정 시 아래 Response 처럼 subpoi 상세 정보가 depth에 맞게 반환됨 |
|
x1 | String | 선택 | X1좌표 spopt가 0인 경우 기준점 X 좌표 spopt가 1인 경우 Extent의 왼쪽 상단 X 좌표 spopt가 2인 경우 기준점 X 좌표 |
|
y1 | String | 선택 | Y1좌표 spopt가 0인 경우 기준점 Y 좌표 spopt가 1인 경우 Extent의 좌상단 Y 좌표 spopt가 2인 경우 기준점 Y 좌표 |
|
x2 | String | 선택 | X2좌표 spopt가 1인 경우 Extent의 우하단 X 좌표, spopt가 2인 경우 사용 안함 |
|
y2 | String | 선택 | Y2좌표 spopt가 1인 경우 Extent의 우하단 Y 좌표, spopt가 2인 경우 사용 안함 |
|
sortopt | String | 선택 | 정렬option 1 : 명칭순 정렬 2 : 거리순 정렬 (좌표를 입력한 경우) 3 : 이름매치->거리순 정렬(좌표를 입력한 경우) 4 : 검색어 Weight 정렬 (엔진기준) 5 : 검색어 Weight 정렬 + length(엔진기준) 6 : 선호카테고리 우선 정렬[V8.1.5 미지원] 7 : 최신데이터 순 정렬 8 : 검색어 Weight 정렬(Landmark>거리>PoiWeight) + 거리순(좌표를 입력한 경우) *sortopt값이 설정되지 않은 경우 4로설정 |
|
catecode | String | 선택 | 선호 카테고리 - 선호 카테고리 검색 시 검색어에 카테고리 명칭을 입력한 경우\, 검색어 우선 정책에 의해 입력한 선호 카테고리보다 검색어를 기준으로 검색 됨 예) 검색어 : "미용실" , 선호 카테고리 : "100000"(음식점) -> 미용실 기준으로 검색 됨 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"search": {
"result": true,
"type": 0,
"totalcount": 1,
"count": 1,
"poitotalcount": 1,
"poicount": 1,
"ucp_poitotalcount": 0,
"ucp_poicount": 0,
"tel_poitotalcount": 0,
"tel_poicount": 0,
"admtotalcount": 0,
"admcount": 0,
"reftotalcount": 0,
"refcount": 0,
"res_type": "YYYY",
"poi": [
{
"poiid": 4722977,
"depth": 0,
"dpx": "169031",
"dpy": "517906",
"rpx": "169039",
"rpy": "517941",
"name1": "삼환하이펙스",
"name2": "하이펙스",
"name3": "삼환하이팩스",
"name4": "하이팩스",
"admcode": "4113510900",
"jibun": "678",
"address": "경기도 성남시 분당구 삼평동",
"roadname": "경기도 성남시 분당구 판교역로",
"roadjibun": "240",
"detailaddress": "",
"catecode": "130301",
"catename": "기업",
"dp_catecode": "150",
"userid": "",
"imagecount": 0,
"userimagecount": 0,
"badgeflag": false,
"distance": 0,
"tel": "",
"islandmark": false,
"updateTS": "2017-10-12 00:00:00",
"data_source": "Thinkware",
"hasoildata": false,
"hasdetailinfo": false,
"hassubpoi": true,
"subpoi": {
"count": 5,
"poi": [
{
"poiid": 4828295,
"depth": 1,
"dpx": "169031",
"dpy": "517910",
"rpx": "169039",
"rpy": "517941",
"name1": "A동",
"name2": "삼환하이팩스A동",
"name3": "",
"name4": "",
"admcode": "4113510900",
"jibun": "678",
"address": "경기도 성남시 분당구 삼평동",
"roadname": "경기도 성남시 분당구 판교역로",
"roadjibun": "240",
"detailaddress": "",
"catecode": "130301",
"catename": "기업",
"dp_catecode": "150",
"userid": "",
"imagecount": 0,
"userimagecount": 0,
"badgeflag": false,
"distance": 0,
"tel": "",
"islandmark": false,
"updateTS": "2017-10-13 00:00:00",
"hasoildata": false,
"hasdetailinfo": false,
"hassubpoi": true,
"subpoi": {
"count": 36,
"poi": [
{
"poiid": 4722978,
"depth": 2,
"dpx": "169039",
"dpy": "517941",
"rpx": "169039",
"rpy": "517941",
"name1": "입구",
"name2": "",
"name3": "",
"name4": "",
"admcode": "4113510900",
"jibun": "678",
"address": "경기도 성남시 분당구 삼평동",
"roadname": "",
"roadjibun": "",
"detailaddress": "",
"catecode": "181100",
"catename": "도로시설",
"dp_catecode": "000",
"userid": "",
"imagecount": 0,
"userimagecount": 0,
"badgeflag": false,
"distance": 0,
"tel": "",
"islandmark": false,
"updateTS": "2017-10-13 00:00:00",
"hasoildata": false,
"hasdetailinfo": false,
"hassubpoi": false
},
....
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
search | Object | 본문 영역 |
search.result | Boolean | 성공 여부 |
search.type | Integer | 0 : 일반 검색 1 : Reference 검색 |
search.totalcount | Integer | 전체 검색 결과 대상 개수 |
search.count | Integer | 검색 결과 개수 |
search.poitotalcount | Integer | 전체 검색 결과 대상 개수(Thinkware POI) |
search.poicount | Integer | 검색 결과 개수(Thinkware POI) |
search.tel_poitotalcount | Integer | 전체 검색 결과 대상 개수(Tel POI) |
search.tel_poicount | Integer | 검색 결과 개수(Tel POI) |
search.ucp_poitotalcount | Integer | 전체 검색 결과 대상 개수(User POI) |
search.ucp_poicount | Integer | 검색 결과 개수(User POI) |
search.admtotalcount | Integer | adm 전체 검색 결과 대상 개수 |
search.admcount | Integer | adm 검색 결과 개수 |
search.reftotalcount | Integer | ref 전체 검색 결과 대상 개수 |
search.refcount | Integer | ref 검색 결과 개수 |
search.recommendedQuery | String | 검색 결과가 없는 경우 오타 보정 결과 제공(NULL가능) |
search.recommendedCost | Integer | 오타 보정 결과 Cost(0~10000) |
search.res_type | String | 검색 결과Type명칭 명칭, 카테고리, 주소, 전화번호 순 (예) NYNN : 명칭 No, 카테고리 YES, 주소 NO, 전화번호 NO |
search.poi | Array | POI 검색 결과 목록 |
search.poi[0].poiid | Integer | POI ID |
search.poi[0].depth | String | POI depth |
search.poi[0].dpx | String | display X 좌표(WGS84의 경우 longitude) |
search.poi[0].dpy | String | display Y 좌표(WGS84의 경우 latitude) |
search.poi[0].rpx | String | 탐색 X 좌표(WGS84의 경우 longitude) |
search.poi[0].rpy | String | 탐색 Y 좌표(WGS84의 경우 latitude) |
search.poi[0].name1 | String | 정식 명칭 |
search.poi[0].name2 | String | 축약 명칭 |
search.poi[0].name3 | String | 확장 명칭 1 |
search.poi[0].name4 | String | 확장 명칭 2 |
search.poi[0].admcode | String | 행정코드 |
search.poi[0].address | String | 주소 |
search.poi[0].jibun | String | 지번 |
search.poi[0].roadname | String | 새주소 도로명 |
search.poi[0].roadjibun | String | 새주소 지번 |
search.poi[0].detailaddress | String | 상세 주소 |
search.poi[0].catecode | String | 분류 코드 |
search.poi[0].catename | String | 분류 명칭 |
search.poi[0].dp_catecode | String | DP 분류 코드 |
search.poi[0].distance | Integer | 좌표와의 거리(해당될 때만) |
search.poi[0].tel | String | 전화번호 |
search.poi[0].hasoildata | Boolean | 유가 데이터 존재 여부 |
search.poi[0].hasdetailinfo | Boolean | 상세 정보 존재 여부 |
search.poi[0].hassubpoi | Boolean | 하위 시설물 존재 여부 |
search.poi[0].adv_count | Integer | 광고 코드 개수 |
search.poi[0].islandmark | Boolean | 랜드마크 여부 |
search.poi[0].updateTS | String | 최종 변경 일시(Y4-MM-DD HH:mm:ss)포맷 |
search.poi[0].data_source | String | POI 생성 정보 구분 (Thinkware/Tel/User) |
search.poi[0].badgeflag | Boolean | 배지 유무(Not Yet : FALSE, Badged : TRUE) |
search.poi[0].userid | String | POI 등록 사용자 ID (UCP인 경우에만) |
search.poi[0].imagecount | Integer | POI 이미지 개수 |
search.poi[0].oildata | Object | 유가 데이터 정보 |
search.poi[0].oildata.g_price | Integer | 휘발유 가격 |
search.poi[0].oildata.hg_price | Integer | 고급 휘발유 가격 |
search.poi[0].oildata.d_price | Integer | 경유 가격 |
search.poi[0].oildata.l_price | Integer | LPG 가격 |
search.poi[0].oildata.updatetime | String | 업데이트 시간 |
search.poi[0].oildata.priceinfo | String | 최고, 최저 유가 정보 (H : 최고, L : 최저, X : 해당없음) 휘발유, 고급휘발유, 경유, LPG 순 |
search.poi[0].oildata.wash | Boolean | 세차 시설 여부 |
search.poi[0].oildata.fix | Boolean | 정비 가능 여부 |
search.poi[0].oildata.mart | Boolean | 매점 여부 |
search.poi[0].AdInfo | Array | 광고 제공 업체 광고 코드 |
search.poi[0].AdInfo.ADCODE | Integer | 광고 코드 1 ~ 99까지 부여 가능(최대 99개) |
search.poi[0].subpoi | Object | 하위 시설물 정보 |
search.poi[0].subpoi.count | Integer | 하위 시설물 개수 |
search.poi[0].subpoi.poi | Array | POI 정보와 동일 |
search.tel | Array | TEL 검색 결과 목록 (POI 정보와 동일) |
search.ucp | Array | UCP 검색 결과 목록 (POI 정보와 동일) |
search.adm | Array | ADM 검색 결과 목록 |
search.adm[0].type | String | 검색 type 1 : 행정계 검색 2 : 지번 검색 3 : 새주소 검색 |
search.adm[0].posx | String | X 좌표(WGS84의 경우 longitude) |
search.adm[0].posy | String | Y 좌표(WGS84의 경우 latitude) |
search.adm[0].admcode | String | 행정코드 |
search.adm[0].address | String | 주소 |
search.adm[0].jibun | String | 지번 |
search.adm[0].roadname | String | 새주소 도로명 |
search.adm[0].roadjibun | String | 새주소 지번 |
search.adm[0].accuracy | Integer | 지번 정확도 0 : 정확 검색 1 : 호지번 확장 2 : 모지번 확장 |
search.hasgasstation | Boolean | 유가 정보 제공 여부 |
search.oilprice | Object | 유가 정보 |
search.oilprice.max_g_price | Integer | 최고 휘발유 가격 |
search.oilprice.min_g_price | Integer | 최저 휘발유 가격 |
search.oilprice.avg_g_price | Integer | 평균 휘발유 가격 |
search.oilprice.max_hg_price | Integer | 최고 고급 휘발유 가격 |
search.oilprice.min_hg_price | Integer | 최저 고급 휘발유 가격 |
search.oilprice.avg_hg_price | Integer | 평균 고급 휘발유 가격 |
search.oilprice.max_d_price | Integer | 최고 경유 가격 |
search.oilprice.min_d_price | Integer | 최저 경유 가격 |
search.oilprice.avg_d_price | Integer | 평균 경유 가격 |
search.oilprice.max_l_price | Integer | 최고 LPG 가격 |
search.oilprice.min_l_price | Integer | 최저 LPG 가격 |
search.oilprice.avg_l_price | Integer | 평균 LPG 가격 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/proposers?query={query} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
query | String | 필수 | 50바이트 | 한글/영문/숫자 50바이트(한글 25자) |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"proposer": {
"result": true,
"count": 10,
"keyword": [
{
"keyword": "판교역",
"frequency": 3729938
},
{
"keyword": "판교",
"frequency": 3729326
},
{
"keyword": "판교IC",
"frequency": 3729362
},
{
"keyword": "판교도서관",
"frequency": 3729514
},
{
"keyword": "판교원마을",
"frequency": 3730051
},
{
"keyword": "판교롯데마트",
"frequency": 3729602
},
{
"keyword": "판교이노밸리",
"frequency": 3730186
},
{
"keyword": "판교박물관",
"frequency": 3729654
},
{
"keyword": "판교중학교",
"frequency": 3730256
},
{
"keyword": "판교메리어트",
"frequency": 3729626
}
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
proposer | Object | 본문 영역 |
proposer.result | Boolean | 성공 여부 |
proposer.count | Integer | 추천 검색어 개수 |
proposer.keyword | Array | 추천 검색어 목록 |
proposer.keyword[0].keyword | String | 추천 검색어 |
proposer.keyword[0].frequency | Integer | 조회 빈도 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/pois?poiid={poiid} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
poiid | String | 필수 | 186개 | POI ID poiid를 구분자 ","와 함께 입력 (여러 개 가능 186개까지) 예) poiid=123,234,567 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"poi": {
"result": true,
"totalcount": 2,
"count": 2,
"poiinfo": [
{
"poiid": 510835,
"dpx": "164939",
"dpy": "530708",
"rpx": "164929",
"rpy": "530731",
"name1": "현대백화점(무역센터점)",
"name2": "현대백화점무역센터점",
"name3": "무역센터현대백화점",
"name4": "",
"admcode": "1168010500",
"jibun": "159-7",
"address": "서울특별시 강남구 삼성동",
"roadname": "서울특별시 강남구 삼성동 테헤란로",
"roadjibun": "517",
"detailaddress": "",
"fulladdress": "서울특별시 강남구 삼성동 159-7 ",
"zip": "",
"homepage": "http://www.e-hyundai.com",
"email": "",
"howtogo": "",
"tel1": "025522233",
"tel2": "",
"fax1": "",
"fax2": "",
"catecode": "110102",
"catename": "쇼핑",
"dp_catecode": "250",
"icode": "493-070-3606",
"externallink": [],
"detail_count": 10,
"etc_count": 2,
"imagecount": 0,
"badgeflag": false,
"detailinfo": [
{
"name": "휴무일",
"value": "매월 2회휴무"
},
{
"name": "영업시간",
"value": "10:30~20:00"
},
{
"name": "주차",
"value": "1400여대 가능"
},
{
"name": "주차료",
"value": "1만원이상 구매시 1시간 무료"
},
{
"name": "부대시설1",
"value": "에메랄드홀(이벤트홀)"
},
{
"name": "부대시설2",
"value": "테라스가든"
},
{
"name": "규모",
"value": "지상10층 지하 4층"
},
{
"name": "층별정보1",
"value": "1층 명품잡화/2층 패션잡화"
},
{
"name": "층별정보2",
"value": "3~4층 여성의류/6층 골프유니캐주얼"
},
{
"name": "층별정보3",
"value": "9층 식당가/10층 문화의 광장"
}
],
"etcinfo": [
{
"name": "기타1",
"value": "금융 중심지인 테헤란로의 심장부에 위치"
},
{
"name": "기타2",
"value": "전세계에서 한국을 찾아온 고객들을 만족시킬 수 있는 한국 유통의 쇼윈도우"
}
],
"hasoildata": false
},
....
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
poi | Object | 본문 영역 |
poi.result | Boolean | 성공 여부 |
poi.totalcount | Integer | 전체 검색 결과 대상 개수 |
poi.count | Integer | 검색 결과 개수 |
poi.poiinfo | Array | POI 검색 결과 목록 |
poi.poiinfo[0].poiid | Integer | POI ID |
poi.poiinfo[0].dpx | String | display X 좌표(WGS84의 경우 longitude) |
poi.poiinfo[0].dpy | String | display Y 좌표(WGS84의 경우 latitude) |
poi.poiinfo[0].rpx | String | 탐색 X 좌표(WGS84의 경우 longitude) |
poi.poiinfo[0].rpy | String | 탐색 Y 좌표(WGS84의 경우 latitude) |
poi.poiinfo[0].name1 | String | 정식 명칭 |
poi.poiinfo[0].name2 | String | 축약 명칭 |
poi.poiinfo[0].name3 | String | 확장 명칭 1 |
poi.poiinfo[0].name4 | String | 확장 명칭 2 |
poi.poiinfo[0].admcode | String | 행정코드 |
poi.poiinfo[0].jibun | String | 지번 |
poi.poiinfo[0].address | String | 주소 |
poi.poiinfo[0].roadname | String | 새주소 도로명 |
poi.poiinfo[0].roadjibun | String | 새주소 지번 |
poi.poiinfo[0].detailaddress | String | 상세 주소 |
poi.poiinfo[0].catecode | String | 분류 코드 |
poi.poiinfo[0].catename | String | 분류 명칭 |
poi.poiinfo[0].fulladdress | String | 전체 주소(행정주소+지번+상세주소) |
poi.poiinfo[0].zip | String | 우편번호 |
poi.poiinfo[0].homeage | String | 홈페이지 url |
poi.poiinfo[0].email | String | 이메일 |
poi.poiinfo[0].howtogo | String | 교통편 |
poi.poiinfo[0].tel1 | String | 전화번호 1 |
poi.poiinfo[0].tel2 | String | 전화번호 2 |
poi.poiinfo[0].fax1 | String | 팩스번호 1 |
poi.poiinfo[0].fax2 | String | 팩스번호 2 |
poi.poiinfo[0].icode | String | ICODE |
poi.poiinfo[0].detail_count | Integer | 분류 상세 항목 개수 |
poi.poiinfo[0].etc_count | Integer | 분류 기타 항목 개수 |
poi.poiinfo[0].badgeflag | Boolean | 배지 유무(Not Yet:FALSE, Badged:TRUE) |
poi.poiinfo[0].imagecount | Integer | POI 이미지 개수 |
poi.poiinfo[0].hasoildata | Boolean | 유가 데이터 존재 유무 |
poi.poiinfo[0].detailinfo | Array | 분류 상세 항목 |
poi.poiinfo[0].detailinfo[0].name | String | 분류 상세 항목 설명 |
poi.poiinfo[0].detailinfo[0].value | String | 분류 상세 항목 내용 |
poi.poiinfo[0].etcinfo | Array | 분류 기타 항목 |
poi.poiinfo[0].etcinfo[0].name | String | 분류 기타 항목 설명 |
poi.poiinfo[0].etcinfo[0].value | String | 분류 기타 항목 내용 |
poi.poiinfo[0].oildata | Object | 유가 데이터 정보 |
poi.poiinfo[0].oilda.tag_price | Integer | 휘발유 가격 |
poi.poiinfo[0].oilda.hg_price | Integer | 고급휘발유 가격 |
poi.poiinfo[0].oilda.d_price | Integer | 경유 가격 |
poi.poiinfo[0].oilda.l_price | Integer | LPG 가격 |
poi.poiinfo[0].oilda.updatetime | String | 업데이트 시간 |
poi.poiinfo[0].oilda.priceinfo | String | 최고, 최저 유가 정보 (H : 최고, L : 최저, X : 해당없음) 휘발유, 고급휘발유, 경유, LPG 순 |
poi.poiinfo[0].oilda.wash | Boolean | 세차 시설 여부 |
poi.poiinfo[0].oilda.fix | Boolean | 정비 가능 여부 |
poi.poiinfo[0].oilda.mart | Boolean | 매점 여부 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/sub-pois?poiid={poiid}&x1={x1}&y1={y1} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
poiid | String | 필수 | POI ID 복수개 지원 안됨 |
|
x1 | String | 선택 | 현위치 또는 지도중심좌표 x, Y 좌표가 모두 NULL 또는 0일 경우 거리 계산을 수행하지 않음 |
|
y1 | String | 선택 | 현위치 또는 지도중심좌표 x, Y 좌표가 모두 NULL 또는 0일 경우 거리 계산을 수행하지 않음 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"subpoi": {
"result": true,
"totalcount": 5,
"count": 5,
"poi": [
{
"poiid": 4521976,
"depth": 1,
"dpx": "169172",
"dpy": "517030",
"rpx": "169172",
"rpy": "517030",
"name1": "환승주차장",
"name2": "",
"name3": "",
"name4": "",
"admcode": "4113511000",
"jibun": "",
"address": "경기도 성남시 분당구 백현동",
"roadname": "",
"roadjibun": "",
"detailaddress": "",
"catecode": "161701",
"catename": "주차장",
"dp_catecode": "360",
"userid": "",
"imagecount": 0,
"userimagecount": 0,
"badgeflag": false,
"distance": 0,
"tel": "",
"islandmark": false,
"updateTS": "1970-01-01 09:00:00",
"hasoildata": false,
"hasdetailinfo": false,
"hassubpoi": false
},
{
"poiid": 4521977,
"depth": 1,
"dpx": "169088",
"dpy": "517090",
"rpx": "169088",
"rpy": "517090",
"name1": "1번출구",
"name2": "",
"name3": "",
"name4": "",
"admcode": "4113511000",
"jibun": "",
"address": "경기도 성남시 분당구 백현동",
"roadname": "",
"roadjibun": "",
"detailaddress": "",
"catecode": "173000",
"catename": "지하철",
"dp_catecode": "370",
"userid": "",
"imagecount": 0,
"userimagecount": 0,
"badgeflag": false,
"distance": 0,
"tel": "",
"islandmark": false,
"updateTS": "1970-01-01 09:00:00",
"hasoildata": false,
"hasdetailinfo": false,
"hassubpoi": false
},
...
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
subpoi | Object | 본문 영역 |
subpoi.result | Boolean | 성공 여부 |
subpoi.totalcount | String | 전체 검색결과 대상 개수 |
subpoi.count | String | 검색 결과 개수 |
subpoi.poi | Array | POI 검색 결과 목록 |
subpoi.poi[0].poiid | Integer | POI ID |
subpoi.poi[0].depth | String | POI depth |
subpoi.poi[0].dpx | String | display X 좌표(WGS84의 경우 longitude) |
subpoi.poi[0].dpy | String | display Y 좌표(WGS84의 경우 latitude) |
subpoi.poi[0].rpx | String | 탐색 X 좌표(WGS84의 경우 longitude) |
subpoi.poi[0].rpy | String | 탐색 Y 좌표(WGS84의 경우 latitude) |
subpoi.poi[0].name1 | String | 정식명칭 |
subpoi.poi[0].name2 | String | 축약명칭 |
subpoi.poi[0].name3 | String | 확장명칭1 |
subpoi.poi[0].name4 | String | 확장명칭2 |
subpoi.poi[0].admcode | String | 행정코드 |
subpoi.poi[0].address | String | 주소 |
subpoi.poi[0].jibun | String | 지번 |
subpoi.poi[0].roadname | String | 새주소 도로명 |
subpoi.poi[0].roadjibun | String | 새주소 지번 |
subpoi.poi[0].detailaddress | String | 상세주소 |
subpoi.poi[0].catecode | String | 분류코드 |
subpoi.poi[0].catename | String | 분류명칭 |
subpoi.poi[0].dp_catecode | String | DP 분류코드 |
subpoi.poi[0].distance | Integer | 좌표와의 거리(해당 될 때만) |
subpoi.poi[0].tel | String | 전화번호 |
subpoi.poi[0].hasoildata | Boolean | 유가 데이터 존재 여부 |
subpoi.poi[0].hasdetailinfo | Boolean | 상세정보 존재 여부 |
subpoi.poi[0].hassubpoi | Boolean | 하위시설물 존재여부 |
subpoi.poi[0].adv_count | Boolean | 광고 코드 개수 |
subpoi.poi[0].islandmark | Boolean | 랜드마크 여부 |
subpoi.poi[0].updateTS | String | 최종변경 일시(Y4-MM-DD HH:mm:ss)포맷 |
subpoi.poi[0].data_source | String | POI 생성 정보 구분 (Thinkware/Tel/User) |
subpoi.poi[0].badgeflag | Boolean | 배지 유무(Not Yet: FALSE, Badged: TRUE) |
subpoi.poi[0].userid | String | POI 등록 사용자 ID (UCP인 경우에만) |
subpoi.poi[0].imagecount | Integer | POI 이미지 개수 |
subpoi.poi[0].oildata | Object | 유가 데이터 정보 |
subpoi.poi[0].oildata.g_price | Integer | 휘발유 가격 |
subpoi.poi[0].oildata.hg_price | Integer | 고급휘발유 가격 |
subpoi.poi[0].oildata.d_price | Integer | 경유 가격 |
subpoi.poi[0].oildata.l_price | Integer | LPG 가격 |
subpoi.poi[0].oildata.updatetime | String | Update 시간 |
subpoi.poi[0].oildata.priceinfo | String | 최고, 최저 유가 정보 (H: 최고, L: 최저, X: 해당없음) 휘발유, 고급휘발유, 경유, LPG 순 |
subpoi.poi[0].oildata.wash | Boolean | 세차시설여부 |
subpoi.poi[0].oildata.fix | Boolean | 정비가능여부 |
subpoi.poi[0].oildata.mart | Boolean | 매점여부 |
subpoi.poi[0].AdInfo | Array | 광고 코드 목록 |
subpoi.poi[0].AdInfo[0].ADCODE | Integer | 광고 코드 1~99까지 부여가능(최대99개) |
subpoi.poi[0].subpoi | Object | 하위 시설물 정보 |
subpoi.poi[0].subpoi.count | Integer | subpoi 개수 |
subpoi.poi[0].subpoi.poi | Array | POI 정보와 동일 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/trans-coordinates?coordtype={coordtype}&x={x}&y={y} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
coordtype | String | 필수 | 0 : WGS84 -> TM 1 : TM -> WGS84 |
|
x | double | 필수 | 현 위치 또는 지도 중심 좌표 WGS84 좌표 혹은 TM 좌표 |
|
y | double | 필수 | 현 위치 또는 지도 중심 좌표 WGS84 좌표 혹은 TM 좌표 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"coordinate": {
"coordtype": "WGS84",
"x": "128.662952",
"y": "38.058678"
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
coordinate | Object | 본문 영역 |
coordinate.coordtype | String | 변환 좌표 형태 |
coordinate.x | String | 변환 X 좌표 |
coordinate.y | String | 변환 Y 좌표 |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/routes?startX={startX}&startY={startY}&endX={endX}&endY={endY}&viaCount={viaCount}&via1X={via1X}&via1Y={via1Y}&via2X={via2X}&via2Y={via2Y}&option={option} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
startX | String | 필수 | 출발지 X 좌표 | |
startY | String | 필수 | 출발지 Y 좌표 | |
endX | String | 필수 | 도착지 X 좌표 | |
endY | String | 필수 | 도착지 Y 좌표 | |
viaCount | String | 선택 | 경유지 개수 | |
via1X | String | 선택 | 경유지 1 X 좌표 | |
via1Y | String | 선택 | 경유지 1 Y 좌표 | |
via2X | String | 선택 | 경유지 2 X 좌표 | |
via2Y | String | 선택 | 경유지 2 Y 좌표 | |
option | String | 필수 | 경로 탐색 옵션 탐색 option "," 단위로 요청 ex) option=real_traffic\,real_traffic2 freeroad_priority : 무료 highway_priority : 고속도로 real_traffic : 실시간 real_traffic_freeroad : 실시간 (무료) real_traffic : 추천1 real_traffic2 : 추천 2 rt_stats : 실시간 통계 rt_stats_freeroad : 실시간통계(무료) short_distance_priority : 단거리 stats : 통계 stats_freeroad : 통계(무료) motorcycle : 이륜차 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"route": {
"SummaryResult": [
[
"freeroad_priority",
68418,
122
],
[
"highway_priority",
77303,
89
],
[
"real_traffic",
63641,
94
],
[
"real_traffic_freeroad",
64469,
119
],
[
"recoomendation1",
4294967295,
0
],
...
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
route | Object | 본문 영역 |
route.SummaryResult | Array | 요청 경로 결과 목록 |
route.SummaryResult[0].0 | String | 옵션 이름 |
route.SummaryResult[0].1 | Integer | 경로 탐색 거리(단위: m) |
route.SummaryResult[0].2 | Integer | 경로 탐색 시간(단위: 분) |
[URI]
메서드 | URI |
---|---|
GET | /maps/v1.0/appkeys/{appkey}/route-details?startX={startX}&startY={startY}&endX={endX}&endY={endY}&viaCount={viaCount}&via1X={via1X}&via1Y={via1Y}&via2X={via2X}&via2Y={via2Y}&option={option} |
[Path parameter]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
appkey | String | 필수 | 고유의 앱키 |
[Query Parameters]
이름 | 타입 | 필수 여부 | 유효 범위 | 설명 |
---|---|---|---|---|
startX | String | 필수 | 출발지 X 좌표 | |
startY | String | 필수 | 출발지 Y 좌표 | |
endX | String | 필수 | 도착지 X 좌표 | |
endY | String | 필수 | 도착지 Y 좌표 | |
viaCount | String | 선택 | 경유지 개수 | |
via1X | String | 선택 | 경유지 1 X 좌표 | |
via1Y | String | 선택 | 경유지 1 Y 좌표 | |
via2X | String | 선택 | 경유지 2 X 좌표 | |
via2Y | String | 선택 | 경유지 2 Y 좌표 | |
option | String | 필수 | 경로 탐색 옵션 탐색 옵션 하나만 가능 예) option=real_traffic freeroad_priority : 무료 highway_priority : 고속도로 real_traffic :실시간 real_traffic_freeroad : 실시간 (무료) real_traffic :추천 1 real_traffic2 : 추천2 rt_stats : 실시간통계 rt_stats_freeroad :실시간 통계(무료) short_distance_priority : 단거리 stats : 통계 stats_freeroad : 통계(무료) motorcycle: 이륜차 |
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": ""
},
"routeDetail": {
"DtlInfoRec": [
[
8,
0,
0,
-1,
-1,
5,
1
],
[
79,
12,
1,
-1,
-1,
5,
2
],
...
],
"NameRec": [
"일반도로",
"판교역로242번길",
"판교역로226번길",
"일반도로",
"대왕판교로644번길",
"우회전",
"우회전",
"우회전",
"백현동,판교(판교테크노밸리)역"
],
"RestRec": [],
"RouteInfo": {
"cross_name_cnt": 0,
"dir_name_cnt": 1,
"dist": 456,
"dtl_cnt": 6,
"max_x": 169113,
"max_y": 517952,
"min_x": 169034,
"min_y": 517648,
"rd_name_cnt": 5,
"rest_cnt": 0,
"sec_cnt": 5,
"time": 3,
"toll_cnt": 0,
"vtx_cnt": 11
},
"SecInfoRec": [
[
8,
0,
0,
1,
0
],
[
126,
14,
1,
2,
1
],
...
],
"VtxRec": [
[
169038,
517943
],
[
169038,
517952
],
[
169109,
517952
],
...
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
header.isSuccessful | Boolean | 성공 여부 |
header.resultCode | Integer | 실패 코드 |
header.resultMessage | String | 실패 메시지 |
routeDetail | Object | 본문 영역 |
RouteInfo | Object | 경로 정보 |
RouteInfo.dist | Integer | 경로의 총 길이(단위: m) |
RouteInfo.time | Integer | 경로의 총 소요시간(단위: 분) |
RouteInfo.sec_cnt | Integer | 구간정보 레코드 개수 |
RouteInfo.dtl_cnt | Integer | 구간 상세정보 레코드 개수 |
RouteInfo.rd_name_cnt | Integer | 도로 명칭 레코드 개수 |
RouteInfo.guide_name_cnt | Integer | 안내 명칭 레코드 개수 |
RouteInfo.cross_name_cnt | Integer | 교차로 명칭 레코드 개수 |
RouteInfo.dir_name_cnt | Integer | 방면 명칭 레코드 개수 |
RouteInfo.vtx_cnt | Integer | 보간점(경로 벡터 좌표) 개수 |
RouteInfo.rest_cnt | Integer | 휴게소 개수 |
RouteInfo.toll_cnt | Integer | 요금소 개수 |
RouteInfo.max_x | Integer | 보간점 레코드 중 최대 X 좌표 |
RouteInfo.max_y | Integer | 보간점 레코드 중 최대 Y 좌표 |
RouteInfo.min_x | Integer | 보간점 레코드 중 최소 X 좌표 |
RouteInfo.min_y | Integer | 보간점 레코드 중 최소 Y 좌표 |
SecInfoRec | Array | 구간정보 레코드 |
SecInfoRec[0].0 | Integer | 구간의 거리(미터) |
SecInfoRec[0].1 | Integer | 구간 속도 |
SecInfoRec[0].2 | Integer | 도로번호 혹은 도로 명칭 인덱스 |
SecInfoRec[0].3 | String | 구간 상세 정보 레코드 개수 |
SecInfoRec[0].4 | String | 구간 상세 정보 테이블 인덱스 |
DtlInfoRec | Array | 구간 상세 정보 레코드 |
DtlInfoRec[0].0 | Integer | 구간 상세 거리 |
DtlInfoRec[0].1 | Integer | 구간 상세 속도 |
DtlInfoRec[0].2 | String | 안내 명칭 인덱스 |
DtlInfoRec[0].3 | String | 교차로 명칭 인덱스 |
DtlInfoRec[0].4 | String | 방면 명칭 인덱스 |
DtlInfoRec[0].5 | String | 도로 종별 |
DtlInfoRec[0].6 | Integer | 안내 지점 보간점 인덱스 |
NameRec | Array | 명칭 레코드 |
NameRec[0].0 | String | 고속도로 명칭 or 안내 명칭 or 교차로 명칭 or 방면 명칭 |
VtxRec | Array | 보간점 레코드 - 경로 벡터 좌표 배열 [[twX1, twY1], [twX2, twY2], … [twXn, twYn]] |
VtxRec[0].0 | Integer | twX |
VtxRec[0].1 | Integer | twY |
RestRec | Array | 명칭 레코드 |
RestRec[0].0 | String | 고속 모드 코드 |
RestRec[0].1 | String | 주유소 업체 코드 (0 : 없음, 1 : LG 주유소, 2 : SK 주유소, 3 : 쌍용 주유소, 4 : 한화 주유소, 5 : 현대 주유소) |
RestRec[0].2 | String | LPG 유무 [0 : 없음, 1 : 있음] |
RestRec[0].3 | String | 정비소 유무 [0 : 없음, 1 : 있음] |
RestRec[0].4 | String | 고속 모드 타입 |
RestRec[0].5 | String | Reserved |
RestRec[0].6 | String | 휴게소 명칭 |
<script type="text/javascript" src="https://kr1-maps.api.nhncloudservice.com/maps/js/v1.0/route.js" > </script>
<script type="text/javascript">
function fnRouteParse(data){ // 경로 탐색 상세 결과값
var routeParsing = route.jsonParsing(data);
routeParsing.routeSummaryInfo; // 탐색 결과 종합
routeParsing.routeDetailInfo; // 탐색 경로 목록
routeParsing.vtxInfo; // 지도 그리기용 좌표 목록
}
</script>
이름 | 타입 | 설명 |
---|---|---|
routeSummaryInfo | Object | 탐색 결과 종합 |
routeSummaryInfo.distance | Integer | 경로 총길이 (단위 : m) |
routeSummaryInfo.time | Integer | 경로의 총 소요시간 (단위 :분) |
routeSummaryInfo.max_x | String | 보간점 레코드 중 최대 X 좌표 |
routeSummaryInfo.max_y | String | 보간점 레코드 중 최대 Y 좌표 |
routeSummaryInfo.min_x | String | 보간점 레코드 중 최소 X 좌표 |
routeSummaryInfo.min_y | String | 보간점 레코드 중 최소 Y 좌표 |
routeDetailInfo | Array | 탐색 경로 목록 |
routeDetailInfo.distance | Integer | 구간 상세거리 (단위 : m) |
routeDetailInfo.speed | Integer | 구간 상세 속도 (단위 : km/h) |
routeDetailInfo.roadName | String | 도로명 |
routeDetailInfo.direction | String | 방향 정보 |
routeDetailInfo.district | String | 방면 정보 |
routeDetailInfo.cross | String | 안내 정보 |
routeDetailInfo.directionDetail | String | 상세 경로 설명 |
vtxInfo | Array | 지도 그리기용 좌표 목록 |
vtxInfo[0].0 | Integer | twX |
vtxInfo[0].1 | Integer | twY |