Differences from DAWA
The endpoints here answer with DAWA's paths, parameters, field names, ids and error bodies, and are tested against DAWA's own answers captured on 23 September 2026. This page lists everything that is not the same.
Authentication
- Every request needs an
api-key. DAWA needed none. See Authentication. - An API key is refused from a web page. Browser code uses a domain token, in
api-keyor in the path (/t/{domain-token}/…). - Requests are rate limited, and addresses are metered against your plan's daily allowance. Refusals for these are problem details with
429andRetry-After, not DAWA errors. See Errors.
Endpoints
Provided:
/autocomplete,/adresser/autocomplete,/adgangsadresser/autocomplete,/vejnavne/autocomplete,/postnumre/autocomplete/adresser,/adresser/{id}/adgangsadresser,/adgangsadresser/{id},/adgangsadresser/reverse/vejnavne,/vejnavne/{navn}/postnumre,/postnumre/{nr}
Not provided: every other DAWA endpoint — among them /kommuner, /regioner,
/sogne, /vejstykker, /navngivneveje, /jordstykker,
/ejerlav, /bebyggelser, /stednavne, /datavask and the
replication API. Records still carry DAWA's href links to these resources, pointing at our host; following
one answers 404. If your code needs one of them, tell us.
Formats
format=json and format=geojson only; any other format, such as csv or
ndjson, is refused with QueryParameterFormatError. A JSONP callback parameter is
ignored and plain JSON returned.
Paging
/adresserand/adgangsadresseralways page:per_sideis at most 100, and a request without it gets the first 100. DAWA returned every match in one answer when no paging was asked for./vejnavnefiltered bypostnrorkommunekodewithoutper_sidereturns every street, as DAWA did./vejnavne?q=with no filter (every street name in Denmark) pages.- The autocompletes return at most 100 suggestions (default 20).
- There is no whole-country download. Walk a search a page at a time; each record returned is one look-up.
Nested records (struktur=nestet)
-
sogn,politikreds,retskreds,opstillingskreds,afstemningsområde,jordstykkeandzonecome from registers other than DAR (DAGI, the boundaries register, and Matriklen, the land register), which this service does not import. Today every record is DAWA's own as of 23 September 2026, so these blocks hold DAWA's values of that date. They are not updated, and addresses that change or are created after it will have them asnull. Don't build on them. bebyggelseris always an empty array.- Every DAR field, the municipality and the region are complete, as are
fladandminirecords.
Order
- The set of suggestions an autocomplete returns follows DAWA's rules, and so do their texts and caret positions. When several addresses score alike, their order can differ from DAWA's.
- A text search (
q) on/adresseror/adgangsadresserreturns its matches in a stable order that is not always DAWA's. - Postcodes found by text (
/postnumre?q=,/postnumre/autocomplete) are the same set as DAWA's, ordered with a name typed in full first, then by number. DAWA ranked them by its own full-text score. - A search with filters only (no
q) pages in a stable order of its own. DAWA ordered those pages by id, so page 2 here is not DAWA's page 2; walk every page and the set is the same. - Street names (
/vejnavne) come back in a stable order of their own; DAWA's had no fixed order either.
Data
- Addresses are DAR's, as DAWA served them on 23 September 2026. Daily updates from DAR (via Datafordeleren) replace that snapshot next.
- Postcodes are DAWA's own list of 23 September 2026, 1,089 of them.
- Ids are DAR's UUIDs, the same ids DAWA used, so ids you have stored still resolve.
Moving over, step by step (in Danish): Skift fra DAWA.