Dit første API-kald på fem minutter
Opret en gratis nøgle, slå en adresse op med curl, Python eller Node, og læs svaret.
Denne guide tager dig fra ingenting til et virkende adresseopslag. Du skal bruge en e-mailadresse og en terminal.
Base-URL'en er https://api.danadresse.dk. Endpoints, parametre og JSON-felter er de samme som i DAWA, så eksisterende DAWA-kode virker, når du har skiftet domænet og tilføjet en nøgle.
1. Opret en konto og en nøgle
- Gå til danadresse.dk/dashboard/signup og skriv din e-mail.
- Indtast den 6-cifrede kode, du får på mail.
- Åbn Nøgler og klik Opret nøgle. Vælg live til rigtige kald eller test til udvikling (se Testnøgler).
Nøglen starter med dawa_live_ eller dawa_test_ og vises kun én gang. Gem den i din password manager eller i en .env-fil, aldrig i Git.
Gratisplanen giver 2 000 kald om måneden og 360 kald i minuttet. Der kræves intet kreditkort.
2. Gem nøglen i en miljøvariabel
Alle eksempler i guiderne læser nøglen fra DANADRESSE_API_KEY, så du kan kopiere dem direkte:
export DANADRESSE_API_KEY="dawa_live_din_nøgle_her"
3. Lav det første kald
Slå op, hvilke adresser der matcher "Rådhuspladsen 1":
curl -s "https://api.danadresse.dk/autocomplete?q=R%C3%A5dhuspladsen%201&per_side=3" \ -H "X-Api-Key: $DANADRESSE_API_KEY"
Samme kald i Python (kræver pip install requests):
import os import requests r = requests.get( "https://api.danadresse.dk/autocomplete", params={"q": "Rådhuspladsen 1", "per_side": 3}, headers={"X-Api-Key": os.environ["DANADRESSE_API_KEY"]}, timeout=10, ) r.raise_for_status() for forslag in r.json(): print(forslag["forslagstekst"])
Og i Node 18 eller nyere, som har fetch indbygget:
const url = new URL("https://api.danadresse.dk/autocomplete"); url.searchParams.set("q", "Rådhuspladsen 1"); url.searchParams.set("per_side", "3"); const res = await fetch(url, { headers: { "X-Api-Key": process.env.DANADRESSE_API_KEY }, }); if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`); for (const forslag of await res.json()) console.log(forslag.forslagstekst);
4. Læs svaret
/autocomplete returnerer en liste af forslag. Hvert forslag har en type (vejnavn, adgangsadresse eller adresse), en tekst til visning og et data-objekt med id'er og koordinater:
[
{
"type": "adresse",
"tekst": "Rådhuspladsen 1, 3300 Frederiksværk",
"forslagstekst": "Rådhuspladsen 1, 3300 Frederiksværk",
"caretpos": 35,
"data": {
"id": "762a9a1f-a5fb-4e47-b1b2-9fa94026bc80",
"vejnavn": "Rådhuspladsen",
"husnr": "1",
"postnr": "3300",
"postnrnavn": "Frederiksværk",
"kommunekode": "0260",
"adgangsadresseid": "0a3f507f-0959-32b8-e044-0003ba298018",
"x": 12.01612365,
"y": 55.97657023
}
}
]De felter, du oftest skal bruge:
| Felt | Indhold |
|---|---|
forslagstekst | Adressen som én linje, klar til at vise brugeren |
data.id | Adressens UUID. Gem den, så du kan slå adressen op igen senere |
data.adgangsadresseid | Id for bygningens indgang (uden etage og dør) |
data.x, data.y | Længde- og breddegrad (WGS84) |
Hent hele adressen med id'et, når brugeren har valgt et forslag:
curl -s "https://api.danadresse.dk/adresser/762a9a1f-a5fb-4e47-b1b2-9fa94026bc80" \ -H "X-Api-Key: $DANADRESSE_API_KEY"
5. Hold øje med forbruget
Hvert svar har headers, der fortæller, hvor meget af kvoten der er tilbage:
X-RateLimit-Limit: 2000 X-RateLimit-Remaining: 1997 X-RateLimit-Reset: 1796083200
Tallene ovenfor er kun et eksempel. X-RateLimit-Reset er et Unix-tidsstempel for, hvornår måneden nulstilles. Grænsen pr. minut står i X-RateLimit-Minute-Limit, X-RateLimit-Minute-Remaining og X-RateLimit-Minute-Reset. Går en gratiskonto over månedskvoten, får den stadig svar op til 2 400 kald (20 % ekstra), og de svar har headeren X-Quota-Grace: true. Se Grænser, kvoter og 429 for, hvordan du håndterer et svar med status 429.
Næste skridt
- Vil du bruge nøglen i en browser? Læs Browsernøgler og tilladte domæner først.
- Kommer du fra DAWA? Skift fra DAWA ved at ændre base-URL'en.
- Byg et adressefelt: Autocomplete-widget i ren JavaScript.
Relaterede guides
Markdown-kilde Fejl i guiden? Skriv til os API-reference (Swagger)