---
title: "Resolve a German municipality (AGS) from WGS84 coordinates"
method: GET
path: "/api/municipality/reverse-geocode"
tags: ["Municipality"]
---

# Resolve a German municipality (AGS) from WGS84 coordinates

`GET /api/municipality/reverse-geocode`

## Request

- Base URL: `https://api.cernion.de`
- URL: `https://api.cernion.de/api/municipality/reverse-geocode`
- Auth: none declared

Reverse-geocodes a lat/lon pair via OpenStreetMap Nominatim to a German Amtlicher Gemeindeschlüssel (AGS), then joins it against the same Destatis GV100 profile as GET /municipality/lookup. found:false means the coordinates do not fall inside a German municipality boundary known to Nominatim (e.g. outside Germany, or open water). Live external call — not cached; the public Nominatim instance is rate-limited to ~1 request/second, set NOMINATIM_ENDPOINT for a private mirror under sustained load.

## Query parameters

- `lat` number, required
- `lon` number, required
- `token` string

## Response `200`

Municipality profile resolved from coordinates (found:false if unresolved)

- object
  - `found` boolean
  - `name` string, nullable
  - `ags` string, nullable
  - `state` string, nullable
  - `postalCode` string, nullable
  - `population` integer, nullable
  - `areaSqKm` number, nullable
  - `sourceStatus` string

---

[API](https://skmtc.dev/cernion/apis/cernion-energy-tools-api.md) · [All operations](https://skmtc.dev/cernion/apis/cernion-energy-tools-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cernion/apis/cernion-energy-tools-api/revisions/cdb94473b538?raw)
