Skip to content

Address API

Danish addresses, and the property behind each one

Search, autocomplete, washing and reverse geocoding over the official Danish address register. Every address comes back with the BFE number of its property, so the same key carries on into the buildings, parcels and valuation behind it.

DAWA closed 1 Oct

Læs denne side på dansk

Try it

Type an address

This box searches the live register. Note the BFE on each hit: Nyhavn 20 has several entrances, and they all belong to one property.

Real results · type any Danish address

  • Nyhavn 20, 1051 København K

    0a3f507a-cdbb-32b8-e044-0003ba298018

    BFE 6033800
  • Nyhavn 20A, 1051 København K

    0a3f507a-cdbc-32b8-e044-0003ba298018

    BFE 6033800
  • Nyhavn 20B, 1051 København K

    0a3f507a-cdbd-32b8-e044-0003ba298018

    BFE 6033800
  • Nyhavn 20C, 1051 København K

    0a3f507a-cdbe-32b8-e044-0003ba298018

    BFE 6033800
  • Nyhavn 2, 1051 København K

    0a3f507a-cda1-32b8-e044-0003ba298018

    BFE 6033860
GET /v1/adresse/search — here through its keyless demo, capped at six hits.

The same search from your code

const res = await fetch(
  'https://api.grundfast.dk/v1/adresse/search?q=' + encodeURIComponent(input),
  { headers: { Authorization: 'Bearer gf_live_...' } },
);
const { results } = await res.json();
// results[0].betegnelse   → "Nyhavn 20, 1051 København K"
// results[0].bfe_nummer   → 6033800

Endpoints

Every address surface a Danish product needs

All live, all on one bearer key; a call without a key answers 401. Parameters and response fields are in the API reference.

GET/v1/adresse/search?q=
SearchFree-text address search over the national register; every hit carries its DAR id and the BFE of its property.
GET/v1/autocomplete?q=
Type-aheadPrefix and fuzzy matching for a form field that calls on every keystroke, served from a local index rather than proxied upstream.
GET/v1/adresse/:uuid
Lookup by idOne address by its stable DAR id — the same identifiers DAWA used, so stored references keep resolving.
GET/v1/datavask/adgangsadresser?betegnelse=
Address washingMatch a messy, hand-typed address against the register; ranked candidates with an A, B or C confidence band.
GET/v1/adgangsadresser/reverse?lon=&lat=
Reverse geocodingThe nearest addresses to a WGS84 coordinate, nearest first.
GET/v1/adgangsadresser/bfe/:bfe
Addresses on a propertyEvery address that belongs to one property — useful when a building has several entrances or a block has many.
GET/v1/postnumre · /v1/vejnavne
Postcodes and street namesLists, lookups and autocomplete for every Danish postcode and street name.

DAWA

Replacing DAWA starts with a base-URL change

DAWA closed on 1 October 2026. Every surface above has a DAWA equivalent and uses the same address ids, so migrating means a new base URL, an Authorization header, and reading the list one level down in each response. See the endpoint-by-endpoint mapping.

FAQ

Questions about the address data

DAR (Danmarks Adresseregister) is the authoritative Danish address register: every official address has a stable id there. DAWA was a free convenience API over the same data; Grundfast reads DAR through Datafordeler and serves it in a comparable shape.

Yes. The ids come from DAR in both cases, so addresses you have already stored keep resolving now that DAWA has closed. There is no re-keying step.

Yes. Search and autocomplete run against a local index with trigram and prefix matching instead of forwarding each keystroke to the upstream register. Live status for every register is published at /status.

Matching a dirty, human-entered address string against the official register and returning ranked candidates with a confidence band — A for a confident single match, B and C for progressively less certain ones. It is how you clean a customer list without checking every row by hand.

Yes, and it is the main reason to use this rather than an address-only service. Every hit carries the BFE number of its property, and the same key continues into buildings, units, parcels and the public valuation via /v1/bbr/ejendom/{bfe}.

See also

Wire up Danish addresses

Create a free key and make your first call in a minute. Build against a 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