canonical: https://jentic.com/apis/developers.kakao.com/kakao-main

# Kakao Maps Local API

Jentic publishes the only available OpenAPI specification for Kakao Maps Local API, keeping it validated and agent-ready. Kakao Maps Local is the dominant location service in South Korea, used by domestic apps for address-to-coordinate geocoding, reverse geocoding, place keyword and category search, region-code lookup, and coordinate-system transformation between WGS84 and Korean grids. The 6-endpoint REST surface exposes the building blocks of any Korean-market mapping integration without the complexity of the full JavaScript SDK.

## For AI agents

Geocode Korean addresses, reverse-geocode coordinates, search places by keyword or category, and transform between Korean coordinate systems on the Kakao Maps Local API.

## Scope

Does not handle turn-by-turn navigation, map tile rendering, or directions routing - use for Korean address geocoding, place search, and coordinate transformation only.

## Capabilities

- Convert a Korean address string to latitude and longitude through GET `/v2/local/search/address.json`
- Resolve coordinates back to a road or jibun address with GET `/v2/local/geo/coord2address.json`
- Look up the administrative region code for a coordinate via GET `/v2/local/geo/coord2regioncode.json`
- Transform coordinates between WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM, and KTM systems through `/v2/local/geo/transcoord.json`
- Search places by free-text keyword across the Kakao POI database with GET `/v2/local/search/keyword.json`
- Filter places by Kakao category code (e.g. cafes, hospitals) using GET `/v2/local/search/category.json`

## Use cases

### Korean address validation and geocoding for delivery apps

Korean delivery, ride-hail, and on-demand apps use the address geocoding endpoint to turn user-entered addresses into coordinates that the dispatch and routing engine can consume. Kakao's database is significantly more accurate for Korean road and jibun addresses than global geocoding providers. Integration takes a few hours including registering a Kakao REST API key.

Example prompt: Call GET `/v2/local/search/address.json` with query='서울특별시 강남구 테헤란로 152' and return the latitude and longitude from the documents array.

### POI search for in-app discovery

Apps that show 'cafes near me' or 'hospitals open now' use keyword and category search against the Kakao POI database. Keyword search supports natural-language queries while category search filters by Kakao's two-letter category codes for precise filtering. Both endpoints accept a center point and radius for proximity-based discovery.

Example prompt: Call GET `/v2/local/search/category.json` with category_group_code='CE7' (cafes), x=127.0276, y=37.4979, and radius=500 to list cafes near Gangnam station.

### Coordinate system conversion for legacy GIS systems

Korean public-sector and enterprise GIS systems often use WTM, TM, or KTM coordinate systems rather than WGS84. The transcoord endpoint converts between any pair of supported systems so applications can ingest legacy datasets and emit coordinates compatible with downstream mapping tools. Single-call, no batching required.

Example prompt: Call GET `/v2/local/geo/transcoord.json` with x=127.108212, y=37.402056, input_coord='WGS84', output_coord='WTM' and return the converted x/y values.

### AI-agent location lookups via Jentic

AI agents serving Korean-market applications can call Kakao Maps Local through Jentic to geocode an address or look up a place by keyword without managing the Kakao Authorization header format. Jentic stores the REST API key in your Jentic One instance and exposes high-level intents like 'geocode a Korean address' so the agent passes a string and receives lat/long.

Example prompt: Search Jentic for 'geocode a Korean address', load the schema for GET `/v2/local/search/address.json`, and execute with the address string from a user form.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v2/local/search/address.json` | Geocode Korean address to coordinates |
| GET | `/v2/local/geo/coord2address.json` | Reverse geocode coordinates to address |
| GET | `/v2/local/geo/coord2regioncode.json` | Coordinate to administrative region code |
| GET | `/v2/local/geo/transcoord.json` | Transform between coordinate systems |
| GET | `/v2/local/search/keyword.json` | Keyword place search |
| GET | `/v2/local/search/category.json` | Category place search |

## Key resources

- **Geocoding** — Convert addresses to coordinates
- **Reverse Geocoding** — Convert coordinates to road or jibun addresses and region codes
- **Search** — Keyword and category place search across Kakao's POI database
- **Coordinates** — Transform between WGS84 and Korean coordinate systems

## Why Jentic

- **Setup:** Wiring the Kakao Maps Local API by hand means composing the 'Authorization: KakaoAK' header, reading the Korean docs, and handling the query parameters for each lookup yourself. Through Jentic you install once, import the Kakao Maps Local API from the API Directory, store the REST API key once, and your agent calls it.
- **Permission scoping:** You choose which Kakao operations the agent may call, so you can limit it to the ones it needs, such as address search and coordinate-to-address lookup, and leave category or keyword search out unless you add them. Every operation is read-only lookup, so the agent cannot render tiles or route navigation.
- **Credential handling:** Your Kakao REST API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'geocode a Korean address' or 'search places by category', and Jentic returns the matching Kakao operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Geocodio** — Geocodio offers US and Canadian forward and reverse geocoding as a non-Korean alternative
- **HERE Maps** — HERE provides global geocoding, places search, and routing as an alternative to Kakao
- **TomTom Search** — TomTom Search offers global geocoding and POI search with EU data-residency options

## FAQ

### Why is there no official OpenAPI spec for Kakao Maps Local API?

Kakao publishes Korean-language documentation for the Maps Local API but not a single OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Kakao Maps Local API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Kakao Maps Local API use?

The API uses an API key in the Authorization header in the format 'KakaoAK <REST_API_KEY>'. Generate the key from the Kakao Developers console under your application's REST API keys. Through Jentic the key is stored in your Jentic One instance and injected per call.

### Can I geocode Korean addresses with this API?

Yes. GET `/v2/local/search/address.json` accepts a query parameter with a Korean road or jibun address and returns matching documents containing latitude (y) and longitude (x). Kakao's database is the most accurate option for Korean addresses.

### What are the rate limits for the Kakao Maps Local API?

Rate limits are not declared in the OpenAPI spec. Kakao applies a per-app daily quota that varies by approval tier. Free-tier apps get a smaller quota than enterprise-tier. Check current quota and remaining requests in the Kakao Developers console.

### How do I geocode a Korean address through Jentic?

Run pip install jentic, then with the async client search for 'geocode a Korean address', load the schema for GET `/v2/local/search/address.json`, and execute with the address as the query parameter. Jentic returns the parsed coordinates.

### Does the Kakao Maps Local API support coordinate-system conversion?

Yes. GET `/v2/local/geo/transcoord.json` transforms between WGS84, WCONGNAMUL, CONGNAMUL, WTM, TM, and KTM. Pass the source coordinate plus input_coord and output_coord values to perform the conversion in a single call.

### Can I limit what my agent is allowed to do with the Kakao Maps Local API?

Yes. Because you run Jentic One yourself, you decide which Kakao Maps Local operations the agent may call and set the rules that govern them. You can allow only the endpoints it needs, such as address geocoding (GET `/v2/local/search/address.json`) and coordinate-to-address lookup (GET `/v2/local/geo/coord2address.json`), while leaving keyword or category place search out unless you add them. Every Kakao operation here is a read-only lookup, so the agent cannot render map tiles or trigger navigation, and your REST API key stays in your own instance rather than the agent's prompt.
