KAKAO 키워드로 장소 검색(POI 검색) 관련 문의

아래 검색어를 사용하여 키워드로 장소 검색 API 요청의 응답 값에 대해 문의드립니다.

1. 특정 지번 주소 검색 시 결과가 반환되지 않는 문제

검색어:

● 익선동 102-1

● 와룡동 75-3

상기 검색어를 각각 입력하여 API 요청 시, 검색 결과 수(total_count)가 0으로 응답되었습니다. 다른 지번 주소로 검색했을 때는 검색 결과가 정상적으로 반환되는 것을 확인하였으나, 위 사례에서는 검색 결과가 반환되지 않았습니다. 이러한 차이가 발생하는 이유에 대해 설명해 주시면 감사하겠습니다.

또한 카카오맵에서 동일한 검색어를 입력하면 “주소” 영역 아래에 검색 결과가 표시되는 것을 확인하였습니다. 카카오맵에서는 어떤 방식으로 검색 결과를 표시하고 있는지 설명해 주시면 많은 도움이 될 것 같습니다.

2. 존재하지 않는 주소 검색 시 연관성 낮은 결과 반환 문제

검색어: 익선동 102

존재하지 않는 주소인 상기 검색어로 키워드로 장소 검색 API를 요청한 결과, 검색 결과 수(total_count)가 2로 반환되었습니다. 그러나 반환된 결과는 익선동에서 상당히 떨어진 위치에 있으며, 검색어 "102"와 연관된 업체명(일공이디자인, 102헤어)을 반환한 것으로 확인되었습니다.

이러한 검색 결과는 사용자가 입력한 검색어와의 연관성이 낮아 실제 사용 시 혼란을 야기할 수 있으며, 서비스 사용성을 저하시킬 수 있다고 판단됩니다. 키워드 검색 API에서 보다 정확하고 연관성 높은 결과를 제공할 수 있는 방법이 있는지 문의드립니다.

참고로, 카카오맵에서 동일한 검색어(익선동 102)를 입력하면 “주소” 영역 아래에 "서울 종로구 익선동 102-1"과 "서울 종로구 익선동 103"이 검색 결과로 표시되는 것을 확인하였습니다.

그런데 카카오 오픈 API의 "주소로 좌표 변환 API"를 이용하여 analyze_type을 similar로 설정하고 "익선동 102"를 검색하였으나, 검색 결과 수가 0으로 반환되었습니다. 카카오맵에서는 유사 주소가 표시되는데 API에서는 결과가 반환되지 않는 이유에 대해 설명 부탁드립니다.

참고: query "익선동 102"에 대한 응답값
{
“documents”: [
{
“address_name”: “서울 종로구 이화동 90-8”,
“category_group_code”: “”,
“category_group_name”: “”,
“category_name”: “서비스,산업 > 디자인”,
“distance”: “”,
“id”: “428935337”,
“phone”: “02-337-8836”,
“place_name”: “일공이디자인”,
“place_url”: “``http://place.map.kakao.com/428935337”``,
“road_address_name”: “서울 종로구 이화장길 32-1”,
“x”: “127.004297283622”,
“y”: “37.5767388031146”
},
{
“address_name”: “서울 성북구 보문동2가 95”,
“category_group_code”: “”,
“category_group_name”: “”,
“category_name”: “가정,생활 > 미용 > 미용실”,
“distance”: “”,
“id”: “1371246432”,
“phone”: “02-921-9443”,
“place_name”: “102헤어”,
“place_url”: “``http://place.map.kakao.com/1371246432”``,
“road_address_name”: “서울 성북구 보문로 117”,
“x”: “127.01907737017204”,
“y”: “37.58548238474282”
}
],
“meta”: {
“is_end”: true,
“pageable_count”: 2,
“same_name”: {
“keyword”: “102”,
“region”: ,
“selected_region”: “서울 종로구 익선동”
},
“total_count”: 2
}
}

@티머니모빌리티0529

1. 예시로 든 두 개의 주소는 특정 장소가 포함된 건물이 아닌, 도로상의 지번인 것으로 보입니다.

“키워드로 장소 검색” API 이름에서 보시듯이 해당 API 는 “장소” 가 존재하는 경우에 대해 결과를 반환합니다.

장소가 없는 지번에 대한 위치 결과를 얻고 싶을 경우에는 “주소로 좌표변환” 을 사용하셔야 합니다.

2. 주소처럼 보이는 쿼리이지만 위에서 설명드린 것처럼 “키워드로 장소 검색”은 “장소”에 대한 검색이므로

익선동 주변의 “102” 와 관련있는 장소를 탐색한 결과가 됩니다.

말씀하신 카카오맵 서비스의 사례는 “주소로 좌표변환”에 따른 결과입니다.

카카오맵의 검색은 하나의 쿼리에 대해 여러가지의 작업을 동시에 수행하여 결과를 보여주기 때문에

API 사용 시 “키워드로 장소 검색”, “주소로 좌표 변환” 등 특정 API 를 사용한 것과는 차이가 있습니다.

또한 유사 검색이나 확장 검색 등은 서비스의 비지니스 로직에 따른 대응이 되는 것으로 해당 로직에 대한 상세한 안내는 불가능한 점 양해 부탁드립니다.