Reverse geocoding API
From a coordinate to the parcel, the address and the property
Send a point — a GPS fix, a click on a map, a measurement in the field — and get the parcel beneath it with its cadastre number and BFE property ID, or the nearest Danish addresses sorted by distance.
Try it
A point in, the nearest addresses out
Pick a place or type any WGS84 point in Denmark. Note the BFE on each hit: the three addresses around Copenhagen City Hall are all entrances to one property.
- 0 m
Rådhuspladsen 1, 1550 København V
BFE 6033528 - 34 m
Vester Voldgade 72, 1552 København V
BFE 6033528 - 34 m
H.C. Andersens Boulevard 21A, 1553 København V
BFE 6033528
GET /v1/adgangsadresser/reverse — here through its keyless demo, nearest three within 200 m.A coordinate alone does not say whose property it is. The parcel lookup finds the piece of land under the point and hands you the BFE number — the key to the buildings in BBR, the cadastre and the valuation. Coordinate to property is two calls.
The address lookup is for “use my location” and for points with no address on the land itself: it returns the nearest entrances with afstand_m, the distance in metres.
The answer
The point, the parcel and the key to the property
The parcel under Copenhagen City Hall. Danish field names, glossed: matrikelnummer is the parcel number, ejerlav the cadastral district it is numbered within, and dagi the municipality and region.
{ "bfe_nummer": 6033528, "kommunekode": "0101", "matrikelnummer": "162", "ejerlavskode": 2000179, "ejerlavsnavn": "Vestervold Kvarter, København", "jordstykke": { "matrikelnummer": "162", "areal_m2": 16195, "geometri": { "type": "Polygon", "coordinates": [ … ] } }, "dagi": { "kommune": { "kode": "0101", "navn": "København" }, "region": { "kode": "1084", "navn": "Region Hovedstaden" } }, "koordinat": { "lon": 12.5695777, "lat": 55.6756275 } }
Call it
One point, two questions
Which parcel is the point on, and which addresses are nearest? Same point, same key, two calls.
import { GrundfastClient } from '@grundfast/sdk'; const gf = new GrundfastClient({ apiKey: 'gf_live_…' }); // The parcel under the point — cadastre number and BFE const parcel = await gf.jordstykkeReverse(12.5695777, 55.6756275); // The three nearest addresses within 200 m, nearest first const { adresser } = await gf.adgangsadresseReverse(12.5695777, 55.6756275, { perSide: 3 });
npm i @grundfast/sdk
| Parameter | Description |
|---|---|
| lon · lat | The point in WGS84. DAWA-style x and y work too. |
| radius | Address reverse only: search radius in metres, default 200, at most 1,000. |
| per_side | Address reverse only: number of addresses, default 1, at most 20. |
- GET/v1/jordstykker/reverse?lon=&lat=
- Point → parcel and propertyThe parcel the point lies on, with parcel number, cadastral district, area, geometry and BFE number.
- GET/v1/adgangsadresser/reverse?lon=&lat=
- Point → nearest addressesAddresses nearest the point, each with afstand_m (distance in metres) and its BFE.
FAQ
Questions about reverse geocoding
/v1/jordstykker/reverse answers with the parcel the point lies on — cadastre number, district and BFE number. /v1/adgangsadresser/reverse answers with the addresses nearest the point, with afstand_m for each. A point in the middle of a field has a parcel but perhaps no address within 200 metres.
Call /v1/jordstykker/reverse with lon and lat. The answer is the parcel under the point with bfe_nummer — the national ID of the property — and with that number the same key fetches the buildings from BBR, the whole cadastre entry and the public valuation.
WGS84 longitude and latitude — what a phone, a web map or a GPS gives you. Clients that send DAWA-style x and y work too. Points outside Denmark are rejected with a 400.
Then there is no parcel, and /v1/jordstykker/reverse answers 404. /v1/adgangsadresser/reverse can still find addresses on land within the radius — raise radius to as much as 1,000 metres.
afstand_m is the straight line in metres between the point and the address’s entrance point, rounded to whole metres. It is not a route along roads.
One point is one call. The Free plan includes 5,000 calls a month and Starter 100,000, and the key is the same one that reads the rest of the registers.
See also
Look up your first point
gf_test_ key that is never billed, and upgrade when the traffic is real.Free up to 5,000 calls a month · no card · test keys never billed · data from Klimadatastyrelsen / Datafordeler, CC BY 4.0