-
Notifications
You must be signed in to change notification settings - Fork 7
카카오 지도 API
박찬인 edited this page Jul 6, 2020
·
6 revisions
- 지역에 있는 가게 정보 가져올 수 있는지 확인
- 요청, 응답 정리
- 요금
- (Optional) 다른 API에 비해 좋은 점, 혹은 우려되는 점
- 카테고리가 명확하게 나와 있어서 우리 서비스 도입에 편할 것 같음
- 가게 데이터가 네이버에 비해 별로 없을 것이라고 생각했는데, 실제로 검색해보면 비슷하거나 더 많은 수준
- 위치 기반 검색이 가능해서 누락되는 데이터 없이 검색 가능
월간 제공량
API | 요청수 |
---|---|
전체 API | 3,000,000건 |
일일 제공량
API | 요청수 |
---|---|
로컬 | 100,000건 |
- 키워드 장소 검색 | 100,000건 |
- 카테고리 장소 검색 | 100,000건 |
지도 | 600,000건 |
- JS SDK | 300,000건 |
방법
-
키워드 (+위치, 카테고리)로 장소 검색
-
카테고리 (+위치)로 장소 검색
-
(필수) 키워드로 장소(가게)를 검색한다.
-
(선택) 추가로 카테고리 그룹 코드, 위치 등을 통해 검색할 수 있다.
-
위치 검색 방법
-
x, y, radius
-
rect (사각형 좌표)
-
-
GET /v2/local/search/keyword.{format} HTTP/1.1
Host: dapi.kakao.com
Authorization: KakaoAK {app_key}
- format: return 받을 data format (ex. json)
- app_key: REST API APP 키
- 서비스를 등록하면 발급된다.
Name | Type | 설명 | 기타 |
---|---|---|---|
query | String | 검색을 원하는 질의어 | - 필수 입력 |
category_group_code | String | 카테고리 그룹 코드 | - 그룹으로 필터링 할 수 있다. - 카폐: CE7, 음식점: FD6 |
x | Double | 중심 좌표의 X (경도) | - 특정 지역을 중심으로 검색할 때 사용한다. - radius와 함께 사용 |
y | Double | 중심 좌표의 Y (위도) | - 특정 지역을 중심으로 검색할 때 사용한다. - radius와 함께 사용 |
radius | Integer | 중심 좌표부터의 반경거리 | - 단위: meter - 0~20000 |
rect | String | 사각형 범위내에서 제한 검색을 위한 좌표 | -좌측 X 좌표,좌측 Y 좌표, 우측 X 좌표, 우측 Y 좌표 형식 |
page | Integer | 결과 페이지 번호 | -기본 값 : 1 -1 ~ 45 |
size | Integer | 한 페이지에 보여질 문서의 개수 | -기본 값 : 15 -1 ~ 15 |
sort | String | 결과 정렬 | -distance: x, y와 함께 사용 -accurancy: 기본 값 |
-
meta
- response 정보
- same_name
-
documents
- 검색된 가게 정보가 array로 전달된다.
meta
Name | Type | Description | 기타 |
---|---|---|---|
total_count | Integer | 검색어에 검색된 문서 수 | - 검색어로 검색된 총 문서 - 모든 page의 총 문서 |
pageable_count | Integer | total_count 중 노출 가능 문서 수 | - 최대 45개 - request의 page에 따라 노출 가능한 가게 수 - 가게 정보를 한 번에 다 응답하지 않고, page를 늘려가며 데이터를 응답한다. |
is_end | Boolean | 현재 페이지가 마지막 페이지인지 여부 | - 값이 false면 page를 증가시켜 다음 페이지를 요청할 수 있음 |
same_name | RegionInfo | 질의어의 지역 및 키워드 분석 정보 |
same_name
- 키워드에 여러 지역이 인식됐을 때에 대한 정보
Name | Type | Description | 기타 |
---|---|---|---|
region | String[] | 질의어에서 인식된 지역의 리스트 | ex) '중앙로 맛집'에서 중앙로에 해당하는 지역 리스트 - 전국에 있는 중앙로 - ["제주 서귀포시 중앙로", "서울 서초구 중앙로", "서울 구로구 중앙로" ..] |
keyword | String | 질의어에서 지역 정보를 제외한 키워드 | ex) '중앙로 맛집'에서 '맛집' |
selected_region | String | 인식된 지역 리스트 중, 현재 검색에 사용된 지역 정보 | - 여러 지역이 인식됐을 때, 그 중 하나의 지역 정보만 검색에 활용된다. |
documents
Name | Type | Description | 기타 |
---|---|---|---|
id | String | 장소 ID | |
place_name | String | 장소명, 업체명 | |
category_name | String | 카테고리 이름 | |
category_group_code | String | 중요 카테고리만 그룹핑한 카테고리 그룹 코드 | |
category_group_name | String | 중요 카테고리만 그룹핑한 카테고리 그룹명 | |
phone | String | 전화번호 | |
address_name | String | 전체 지번 주소 | |
road_address_name | String | 전체 도로명 주소 | |
x | Double | X 좌표값 혹은 longitude | |
y | Double | Y 좌표값 혹은 latitude | |
place_url | String | 장소 상세페이지 URL | |
distance | String | 중심좌표까지의 거리 | - 단, x,y 파라미터를 준 경우에만 존재 - 단위: meter |
-
(필수) 카테고리로 장소(가게)를 검색한다.
-
(선택) 추가로 위치 등을 통해 검색할 수 있다.
-
위치 검색 방법
-
x, y, radius
-
rect (사각형 좌표)
-
-
GET /v2/local/search/category.{format} HTTP/1.1
Host: dapi.kakao.com
Authorization: KakaoAK {app_key}
-
format: return 받을 data format (ex. json)
-
app_key: REST API APP 키
- 서비스를 등록하면 발급된다.
-
Name | Type | 설명 | 기타 |
---|---|---|---|
category_group_code | String | 카테고리 그룹 코드 | - 필수 입력 - 카폐: CE7, 음식점: FD6 |
x | String | 중심 좌표의 X (경도) | - 특정 지역을 중심으로 검색할 때 사용한다. - radius와 함께 사용 |
y | String | 중심 좌표의 Y (위도) | - 특정 지역을 중심으로 검색할 때 사용한다. - radius와 함께 사용 |
radius | Integer | 중심 좌표부터의 반경거리 | - 단위: meter - 0~20000 |
rect | String | 사각형 범위내에서 제한 검색을 위한 좌표 | -좌측 X 좌표,좌측 Y 좌표, 우측 X 좌표, 우측 Y 좌표 형식 |
page | Integer | 결과 페이지 번호 | -기본 값 : 1 -1 ~ 45 |
size | Integer | 한 페이지에 보여질 문서의 개수 | -기본 값 : 15 -1 ~ 15 |
sort | String | 결과 정렬 | -distance: x, y와 함께 사용 -accurancy: 기본 값 |
-
meta
- response 정보
- same_name
-
documents
- 검색된 가게 정보가 array로 전달된다.
meta
Name | Type | Description | 기타 |
---|---|---|---|
total_count | Integer | 검색어에 검색된 문서 수 | - 검색어로 검색된 총 문서 - 모든 page의 총 문서 |
pageable_count | Integer | total_count 중 노출 가능 문서 수 | - 최대 45개 - request의 page에 따라 노출 가능한 가게 수 - 가게 정보를 한 번에 다 응답하지 않고, page를 늘려가며 데이터를 응답한다. |
is_end | Boolean | 현재 페이지가 마지막 페이지인지 여부 | - 값이 false면 page를 증가시켜 다음 페이지를 요청할 수 있음 |
same_name | RegionInfo | 질의어의 지역 및 키워드 분석 정보 |
same_name
- 키워드에 여러 지역이 인식됐을 때에 대한 정보
Name | Type | Description | 기타 |
---|---|---|---|
region | String[] | 질의어에서 인식된 지역의 리스트 | ex) '중앙로 맛집'에서 중앙로에 해당하는 지역 리스트 - 전국에 있는 중앙로 - ["제주 서귀포시 중앙로", "서울 서초구 중앙로", "서울 구로구 중앙로" ..] |
keyword | String | 질의어에서 지역 정보를 제외한 키워드 | ex) '중앙로 맛집'에서 '맛집' |
selected_region | String | 인식된 지역 리스트 중, 현재 검색에 사용된 지역 정보 | - 여러 지역이 인식됐을 때, 그 중 하나의 지역 정보만 검색에 활용된다. |
documents
Name | Type | Description | 기타 |
---|---|---|---|
id | String | 장소 ID | |
place_name | String | 장소명, 업체명 | |
category_name | String | 카테고리 이름 | |
category_group_code | String | 중요 카테고리만 그룹핑한 카테고리 그룹 코드 | |
category_group_name | String | 중요 카테고리만 그룹핑한 카테고리 그룹명 | |
phone | String | 전화번호 | |
address_name | String | 전체 지번 주소 | |
road_address_name | String | 전체 도로명 주소 | |
x | Double | X 좌표값 혹은 longitude | |
y | Double | Y 좌표값 혹은 latitude | |
place_url | String | 장소 상세페이지 URL | |
distance | String | 중심좌표까지의 거리 | - 단, x,y 파라미터를 준 경우에만 존재 - 단위: meter |
- Jenkins CI/CD 적용하기
- Nginx 적용하기
- docker로 jenkins설치 시 플러그인 설치오류 해결방법
- 데이터베이스 마이그레이션
- Logback, Error 로그 Slack 알림 받기
- Jacoco 적용하기
- SonarQube 적용하기