본문 바로가기메인 메뉴 바로가기사이드 메뉴 바로가기

kakao developers

Related sites

사이드 메뉴

Kakao Map

Search

This document describes how to integrate the Local API into your service with a REST API.

You can test the features described in this document in [Tools] > [REST API Test].

MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/search/address.${FORMAT}REST API key

Provides the coordinates of the requested address with the land-lot number address, road name address, coordinates, zip code, building name, etc., to display the address precisely on the map.

Add your REST API key to the request header, and send a GET request. You can optionally add the parameters to set the result format to your request along with the search query. It supports both the land-lot number address and road name address systems, and the response supports both XML and JSON formats.

New parameter: analyze_type

As of January 25, 2021, new optional parameter, analyze_type, is added to improve search results. Refer to DevTalk for more details.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
queryStringSearch query you want to search.O
analyze_typeStringType of search results.
similar: provides the search results similar to the entered address pattern for a wide range of search results.
exact: provides the search results exactly matched with the entered address pattern when you enter the exact building name as a search query.
If you do not specify this parameter, similar is applied as a default.
X
pageIntegerResult page number.
A value between 1 and 45.
(Default: 1)
X
sizeIntegerNumber of documents to be displayed on a single page.
A value between 1 and 30.
(Default: 10)
X
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of documents found by search query.
pageable_countIntegerNumber of documents to be displayed out of all documents (total_count).
is_endBooleanWhether the current page is the last page.
If false, you can request the next page by incrementing the value of page.
NameTypeDescription
address_nameStringFull land-lot number address or full road name address.
Determined as you enter an address.
address_typeStringType of the address_name value.
One of REGION, ROAD, REGION_ADDR, ROAD_ADDR.
REGION: Location name.
ROAD: Road name.
REGION_ADDR: Land address.
ROAD_ADDR: Road name address.
xStringX coordinate (longitude).
yStringY coordinate (latitude).
addressAddressDetailed information of Land-lot address.
road_addressRoadAddressDetailed information of Road name address.
NameTypeDescription
address_nameStringFull land-lot number address.
region_1depth_nameStringRegion 1 Depth. -si(city) unit.
region_2depth_nameStringRegion 2 Depth. -gu unit.
region_3depth_nameStringRegion 3 Depth. -dong unit.
region_3depth_h_nameStringRegion 3 Depth. Name of administrative area.
h_codeStringAdministration code.
b_codeStringCourt code.
mountain_ynStringWhether the area is a mountain.
Y or N.
main_address_noStringMain land-lot number.
sub_address_noStringAdditional land-lot number. If none, empty string ("") is returned.
zip_codeStringDeprecated 6-digit zip code.
Refer to Notice.
xStringX coordinate (longitude).
yStringY coordinate (latitude).
NameTypeDescription
address_nameStringFull road name address.
region_1depth_nameStringRegion 1 Depth.
region_2depth_nameStringRegion 2 Depth.
region_3depth_nameStringRegion 3 Depth.
road_nameStringRoad name.
underground_ynStringWhether the area is underground.
Y or N.
main_building_noStringBuilding number.
sub_building_noStringAdditional building number.
If none, empty string ("") is returned.
building_nameStringBuilding name.
zone_noString5-digit zip code.
xStringX coordinate (longitude).
yStringY coordinate (latitude).
curl -v -G GET "https://dapi.kakao.com/v2/local/search/address.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
--data-urlencode "query=전북 삼성동 100"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"total_count": 4,
"pageable_count": 4,
"is_end": true
},
"documents": [
{
"address_name": "전북 익산시 부송동 100",
"y": "35.97664845766847",
"x": "126.99597295767953",
"address_type": "REGION_ADDR",
"address": {
"address_name": "전북 익산시 부송동 100",
"region_1depth_name": "전북",
"region_2depth_name": "익산시",
"region_3depth_name": "부송동",
"region_3depth_h_name": "삼성동",
"h_code": "4514069000",
"b_code": "4514013400",
"mountain_yn": "N",
"main_address_no": "100",
"sub_address_no": "",
"x": "126.99597295767953",
"y": "35.97664845766847"
},
"road_address": {
"address_name": "전북 익산시 망산길 11-17",
"region_1depth_name": "전북",
"region_2depth_name": "익산시",
"region_3depth_name": "부송동",
"road_name": "망산길",
"underground_yn": "N",
"main_building_no": "11",
"sub_building_no": "17",
"building_name": "",
"zone_no": "54547",
"y": "35.976749396987046",
"x": "126.99599512792346"
}
}
// ...
]
}
MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/geo/coord2regioncode.${FORMAT}REST API key

Converts the coordinates in the selected coordinate system into the administrative and legal-status area information.

You can leverage this API that offers approximate location information to introduce additional information such as restaurants or weather in that location by linking other services.

Add your REST API key to the request header, and send a GET request. You can optionally add the parameters to set the desired coordinate system to your request along with the X and Y coordinates.

The response supports both XML and JSON formats.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
xStringX coordinate (longitude).O
yStringY coordinate (latitude).O
input_coordStringCoordinate system of the requested x and y.
Supported coordinate systems: WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM.
(Default: WGS84)
X
output_coordStringUsed to designate the type of coordinate system to be displayed in the response.
Supported coordinate systems: WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM.
(Default: WGS84)
X
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of documents found by search query.
NameTypeDescription
region_typeStringH (administrative) or B (legal-status).
address_nameStringAll region names in address.
region_1depth_nameStringRegion 1 Depth. -si(city) unit (Sea areas are not included).
region_2depth_nameStringRegion 2 Depth. -gu unit (Sea areas are not included).
region_3depth_nameStringRegion 3 Depth. -dong unit (Sea areas are not included).
region_4depth_nameStringRegion 4 Depth.
Only returned if region_type is set to B (legal-status area) and the area is included as -ri unit.
codeStringRegion code.
xDoubleX coordinate (longitude).
yDoubleY coordinate (latitude).
curl -v -G GET "https://dapi.kakao.com/v2/local/geo/coord2regioncode.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
--data-urlencode "x=127.1086228" \
--data-urlencode "y=37.4012191"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"total_count": 2
},
"documents": [
{
"region_type": "B",
"address_name": "경기도 성남시 분당구 삼평동",
"region_1depth_name": "경기도",
"region_2depth_name": "성남시 분당구",
"region_3depth_name": "삼평동",
"region_4depth_name": "",
"code": "4113510900",
"x": 127.10459896729914,
"y": 37.40269721785548
},
{
"region_type": "H",
"address_name": "경기도 성남시 분당구 삼평동",
"region_1depth_name": "경기도",
"region_2depth_name": "성남시 분당구",
"region_3depth_name": "삼평동",
"region_4depth_name": "",
"code": "4113565500",
"x": 127.1163593869371,
"y": 37.40612091848614
}
]
}
MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/geo/coord2address.${FORMAT}REST API key

Converts the X and Y coordinates of a location to the land-lot number address and road name address.

Some coordinates may not be converted to a road name address.

Add your REST API key to the request header, and send a GET request. You can optionally add the parameter to set the type of the coordinate system to your request along with the X and Y coordinates.

The response supports both XML and JSON formats. If the request is successful, address (land-lot number address) or road_address (road name address) is returned inside documents.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
xStringX coordinate (longitude).O
yStringY coordinate (latitude).O
input_coordStringCoordinate system of the requested x and y.
Supported coordinate systems: WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM.
(Default: WGS84)
X
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of converted land-lot number addresses and road name addresses.
0 or 1.
NameTypeDescription
addressAddressDetailed information of land-lot number address.
road_addressRoadAddressDetailed information of road name address.
NameTypeDescription
address_nameStringFull land-lot number address.
region_1depth_nameStringRegion 1 Depth. -si(city) unit.
region_2depth_nameStringRegion 2 Depth. -gu unit.
region_3depth_nameStringRegion 3 Depth. -dong unit.
mountain_ynStringWhether the area is a mountain.
Y or N.
main_address_noStringMain land-lot number.
sub_address_noStringAdditional land-lot number.
If none, empty string ("") is returned.
zip_codeStringDeprecated 6-digit zip code.
Refer to Notice.
NameTypeDescription
address_nameStringFull road name address.
region_1depth_nameStringRegion 1 Depth. -si(city) unit.
region_2depth_nameStringRegion 2 Depth. -gu unit.
region_3depth_nameStringRegion 3 Depth. -myeon unit.
road_nameStringRoad name.
underground_ynStringWhether the area is underground.
Y or N.
main_building_noStringBuilding number.
sub_building_noStringAdditional building number.
If none, empty string("") is returned.
building_nameStringBuilding name.
zone_noString5-digit zip code.
curl -v -G GET "https://dapi.kakao.com/v2/local/geo/coord2address.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
-d "x=127.423084873712" \
-d "y=37.0789561558879" \
-d "input_coord=WGS84"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"total_count": 1
},
"documents": [
{
"road_address": {
"address_name": "경기도 안성시 죽산면 죽산초교길 69-4",
"region_1depth_name": "경기",
"region_2depth_name": "안성시",
"region_3depth_name": "죽산면",
"road_name": "죽산초교길",
"underground_yn": "N",
"main_building_no": "69",
"sub_building_no": "4",
"building_name": "무지개아파트",
"zone_no": "17519"
},
"address": {
"address_name": "경기 안성시 죽산면 죽산리 343-1",
"region_1depth_name": "경기",
"region_2depth_name": "안성시",
"region_3depth_name": "죽산면 죽산리",
"mountain_yn": "N",
"main_address_no": "343",
"sub_address_no": "1"
}
}
]
}
MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/geo/transcoord.${FORMAT}REST API key

Converts the specified X and Y coordinates ​​in a coordinate system to another X and Y coordinates in the designated coordinate system, which allows compatibility with other coordinate systems.

Add your REST API key to the request header, and send a GET request. You can designate the desired coordinate system to convert to along with the X and Y coordinates.

The response supports both XML and JSON formats.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
xDoubleX coordinate (longitude).O
yDoubleY coordinate (latitude).O
input_coordStringCoordinate system of the requested x and y.
Supported coordinate systems: WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM, KTM, UTM, BESSEL, WKTM, WUTM.
(Default: WGS84)
X
output_coordStringType of coordinate system to be converted from the input coordinate system.
Supported coordinate systems: WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM, KTM, UTM, BESSEL, WKTM, WUTM.
(Default: WGS84)
O
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of matched documents.
NameTypeDescription
xStringX coordinate (longitude).
yStringY coordinate (latitude).
curl -v -G GET "https://dapi.kakao.com/v2/local/geo/transcoord.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
--data-urlencode "x=160710.37729270622" \
--data-urlencode "y=-4388.879299157299" \
--data-urlencode "input_coord=WTM" \
--data-urlencode "output_coord=WGS84"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"total_count": 1
},
"documents": [
{
"x": 126.57740680000002,
"y": 33.453357700000005
}
]
}
MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/search/keyword.${FORMAT}REST API key

Provides the search results for places that match the search query in the specified sorting order.

You can request the desired result with extended features such as current position coordinates, radius limit, sort options, paging, and more.

Add your REST API key to the request header, and send a GET request. You can optionally add the parameters to set the result format to your request along with the search query.

The response supports both XML and JSON formats. If the request is successful, it returns place information such as name, address, coordinates, category, and a URL redirecting to the detail page of the place on the Kakao Map.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
queryStringSearch query you want to search.O
category_group_codeStringCategory group code of the places to search for.
Major places are classified as a category group.
Used when you want to filter the results by category.
X
xStringX coordinate (longitude) of the center.
Used to search places around a specific area along with radius.
X
yStringY coordinate (latitude) of the center.
Used to search places around a specific area along with radius.
X
radiusIntegerThe distance from the center coordinates to an axis of rotation in meters.
Used to search places around a specific area along with x and y (center coordinates).
A value between 0 and 20000.
X
rectStringCoordinates of a rectangle that is used to limit search area, such as when searching places within the map screen.
In the coordinates of left X, left Y, right X, and right Y format.
X
pageIntegerResult page number.
A value between 1 and 45.
(Default: 1)
X
sizeIntegerNumber of documents to be displayed on a single page.
A value between 1 and 15.
(Default: 15)
X
sortStringSorting method of the document results.
accuracy or distance (Default: accuracy).
In the case of distance, x and y values are required as a reference coordinates.
X
NameDescription
MT1Supermarket
CS2Convenience store
PS3Daycare center, kindergarten
SC4School
AC5Hagwon such as cram school, private learning institute
PK6Parking lot
OL7Gas station, LPG station
SW8Subway station
BK9Bank
CT1Cultural facility
AG2Real estate agency
PO3Public institutions
AT4Attractions
AD5Accommodation
FD6Restaurant
CE7Cafe
HP8Hospital
PM9Pharmacy
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of documents found by search query.
pageable_countIntegerNumber of documents to be displayed out of all documents (total_count).
(Maximum: 45)
is_endBooleanWhether the current page is the last page.
If false, you can request the next page by incrementing the value of page.
same_nameRegionInfoLocation and keyword analyzed out of the search query.
NameTypeDescription
regionString[]List of places found according to the region in a search query.
Example: List of places in 'Jungang-ro' (region name) out of 'Jungang-ro Restaurants'
keywordStringKeyword excluding region information in the search query.
Example: 'Restaurant' in'Jungang-ro Restaurant'
selected_regionStringThe region information used to search for places in the list of found places.
NameTypeDescription
idStringPlace ID.
place_nameStringPlace name, company name.
category_nameStringCategory name.
category_group_codeStringCode of the requested category group.
category_group_nameStringName of category groups that are grouped for only major categories.
phoneStringPhone number.
address_nameStringFull land-lot number address.
road_address_nameStringFull road name address.
xStringX coordinate (longitude).
yStringY coordinate (latitude).
place_urlStringURL of the detailed page on the place.
distanceStringDistance to the coordinates of the center in meters.
Only returned if x and y are specified.
curl -v -G GET "https://dapi.kakao.com/v2/local/search/keyword.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
--data-urlencode "query=카카오프렌즈" \
--data-urlencode "x=127.06283102249932" \
--data-urlencode "y=37.514322572335935" \
--data-urlencode "radius=20000"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"same_name": {
"region": [],
"keyword": "카카오프렌즈",
"selected_region": ""
},
"pageable_count": 14,
"total_count": 14,
"is_end": true
},
"documents": [
{
"place_name": "카카오프렌즈 코엑스점",
"distance": "418",
"place_url": "http://place.map.kakao.com/26338954",
"category_name": "가정,생활 > 문구,사무용품 > 디자인문구 > 카카오프렌즈",
"address_name": "서울 강남구 삼성동 159",
"road_address_name": "서울 강남구 영동대로 513",
"id": "26338954",
"phone": "02-6002-1880",
"category_group_code": "",
"category_group_name": "",
"x": "127.05902969025047",
"y": "37.51207412593136"
}
// ...
]
}
MethodURLAuthorization
GEThttps://dapi.kakao.com/v2/local/search/category.${FORMAT}REST API key

Provides the search results for places by predefined group code in the specified order.

You can request the desired result with extended features such as current position coordinates, radius limit, sort options, paging, and more.

Add your REST API key to the request header, and send a GET request. You can optionally add the parameters to set the result format to your request along with the search query.

The response supports both XML and JSON formats. If the request is successful, it returns place information such as name, address, coordinates, category, and a URL redirecting to the detail page of the place on the Kakao Map.

NameDescriptionRequired
AuthorizationAuthorization: KakaoAK ${REST_API_KEY}
REST API key as a type of user authentication.
O
NameTypeDescriptionRequired
FORMATStringThe data type of the response.
Either json or xml.(Default: json)
X
NameTypeDescriptionRequired
category_group_codeStringCategory group code of the places to search for.
Major places are classified as a category group.
O
xStringX coordinate (longitude) of the center.
Used to search places around a specific area along with radius.
Either (x,y, radius) or rect is required.
yStringY coordinate (latitude) of the center.
Used to search places around a specific area along with radius.
Either (x,y, radius) or rect is required.
radiusIntegerThe distance from the center coordinates to an axis of rotation in meters.
Used to search places around a specific area along with x and y (center coordinates).
A value between 0 and 20000.
Either (x,y, radius) or rect is required.
rectStringCoordinates of a rectangle that is used to limit search area, such as when searching places within the map screen.
In the coordinates of left X, left Y, right X, and right Y format.
Either (x,y, radius) or rect is required.
X
pageIntegerResult page number.
A value between 1 and 45.
(Default: 1)
X
sizeIntegerNumber of documents to be displayed on a single page.
A value between 1 and 15.
(Default: 15)
X
sortStringSorting method of the document results.
accuracy or distance (Default: accuracy).
In the case of distance, x and y values are required as a reference coordinates.
X
NameDescriptionRequired
content-typeThe data type of the response.
content-type: application/json;charset=UTF-8
or content-type: text/xml;charset=UTF-8
O
NameTypeDescription
metaMetaSearch results such as the number of documents found.
documentsDocument[]Detailed search results, including each document.
NameTypeDescription
total_countIntegerNumber of documents found by search query.
pageable_countIntegerNumber of documents to be displayed out of all documents (total_count).
(Maximum: 45)
is_endBooleanWhether the current page is the last page.
If false, you can request the next page by incrementing the value of page.
same_nameRegionInfoLocation and keyword analyzed out of the search query.
NameTypeDescription
regionString[]List of places found according to the region in a search query.
Example: List of places in Jungang-ro(region name) out of 'Jungang-ro Restaurants'
keywordStringKeyword excluding region information in the search query.
Example: 'Restaurant' in'Jungang-ro Restaurant'
selected_regionStringThe region information used to search for places in the list of the found places.
NameTypeDescription
idStringPlace ID.
place_nameStringPlace name, company name.
category_nameStringCategory name.
category_group_codeStringCode of the requested category group.
Only returned if category_group_code is specified.
category_group_nameStringName of the requested category group.
Only returned if category_group_code is specified.
phoneStringPhone number.
address_nameStringFull land-lot number address.
road_address_nameStringFull road name address.
xStringX coordinate (longitude).
yStringY coordinate (latitude).
place_urlStringURL of the detailed page on the place.
distanceStringDistance to the coordinates of the center in meters.
Only returned if x and y are specified.
curl -v -G GET "https://dapi.kakao.com/v2/local/search/category.json" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
--data-urlencode "category_group_code=PM9" \
--data-urlencode "radius=20000"
// HTTP/2 200
// content-type: application/json;charset=UTF-8
{
"meta": {
"same_name": null,
"pageable_count": 11,
"total_count": 11,
"is_end": true
},
"documents": [
{
"place_name": "장생당약국",
"distance": "",
"place_url": "http://place.map.kakao.com/16618597",
"category_name": "의료,건강 > 약국",
"address_name": "서울 강남구 대치동 943-16",
"road_address_name": "서울 강남구 테헤란로84길 17",
"id": "16618597",
"phone": "02-558-5476",
"category_group_code": "PM9",
"category_group_name": "약국",
"x": "127.05897078335246",
"y": "37.506051888130386"
}
// ...
]
}

Was this helpful?