# Ingen resultater? Når svaret er en tom liste

> Gå en tjekliste igennem, når API'et svarer 200 med en tom liste, fra side og vejnavne til status, srid, autocomplete-type og datavask.
>
> https://danadresse.dk/guides/ingen-resultater · verified 2026-11-02
En tom liste (`[]`) med status 200 betyder, at kaldet var gyldigt, men at intet matchede alle filtrene. API'et fortæller ikke, hvilket filter der var for snævert. Fjern filtrene ét ad gangen, og brug tjeklisten herunder. De fleste tilfælde skyldes formatet på en kode eller et filter, der virker anderledes end forventet.

## Kør det samme kald med færre filtre

Den hurtigste diagnose er at fjerne ét filter ad gangen, indtil der kommer resultater. Det sidste filter, du fjernede, er synderen. Eksemplet her viser en almindelig: et forkortet vejnavn.

```python id=compare-filters run=live expect="Gammel Kongevej: 1"
import os
import requests

API = "https://api.danadresse.dk"
headers = {"X-Api-Key": os.environ["DANADRESSE_API_KEY"]}

for name in ("Gl. Kongevej", "Gammel Kongevej"):
    r = requests.get(f"{API}/adgangsadresser",
                     params={"vejnavn": name, "postnr": "1610", "per_side": 1},
                     headers=headers, timeout=10)
    r.raise_for_status()
    print(f"vejnavn={name}: {len(r.json())} resultat(er)")
```

```text id=compare-output run=no
vejnavn=Gl. Kongevej: 0 resultat(er)
vejnavn=Gammel Kongevej: 1 resultat(er)
```

## Tjeklisten

### Paginering

- **Symptom:** Side 1 har data, en senere side er tom.
- **Årsag:** `side` er efter den sidste side. Der er ingen header med det samlede antal.
- **Løsning:** Stop løkken, når en side har færre rækker end `per_side`. Se [Paginering](/guides/paginering).

### Koder

- **Symptom:** Din egen kode finder ikke kommune 101 eller postnummer 800 i svaret.
- **Årsag:** Koder i svarene har altid foranstillede nuller: `"kommunekode": "0101"`, `"nr": "0800"`. Som input tager API'et både `kommunekode=101` og `0101`.
- **Løsning:** Sammenlign strenge med nuller: `str(kode).zfill(4)` i Python, `String(kode).padStart(4, "0")` i JavaScript.

- **Symptom:** Et postnummer giver `[]`, selv om adressen findes.
- **Årsag:** Adressen ligger i et andet postnummer, end du tror. Københavnske og frederiksbergske gader skifter postnummer undervejs, og stormodtager-postnumre (firmaers egne postnumre) har ingen adresser.
- **Løsning:** Fjern `postnr` og se, hvilket postnummer adressen har.

### Status: nedlagte og foreløbige adresser

- **Symptom:** En ny eller en gammel adresse mangler.
- **Årsag:** Uden `status` eller `medtagnedlagte` returnerer lister gældende og foreløbige adresser (status 1 og 3, så nybyggeri er med). Nedlagte og henlagte adresser (status 2 og 4) er udeladt. `/autocomplete` og søgning finder kun adresser i brug: en nedlagt adresse forsvinder fra søgningen.
- **Løsning:** Brug `medtagnedlagte` eller `status=2` / `status=4` på `/adresser` og `/adgangsadresser`. `medtagnedlagte` virker også sammen med `cirkel` og `polygon`. Se [status, darstatus og nedlagte adresser](/guides/status-og-darstatus).

### Filtre på vejnavn, husnummer, etage og dør

- **Symptom:** `vejnavn=Gl. Kongevej` eller `vejnavn=Soendergade` giver `[]`.
- **Årsag:** `vejnavn` matcher begyndelsen af det officielle navn. Forkortelser (`Gl.` for Gammel, `Skt.` for Sankt) passer ikke, og du kan ikke regne med, at en stavemåde uden æøå gør.
- **Løsning:** Brug `/autocomplete` eller `/datavask/adresser` til tekst, som brugere har skrevet. Brug `vejnavn=` kun med navne, du har fået fra API'et.

- **Symptom:** `husnr=12 A` giver `[]`.
- **Årsag:** Husnummeret er én streng uden mellemrum: `12A`.
- **Løsning:** Fjern mellemrum mellem tal og bogstav.

- **Symptom:** `etage=1. sal` eller `dør=t.h.` giver `[]`.
- **Årsag:** Etage og dør har faste koder: etage `st`, `kl`, `1`, `2` …, dør `th`, `tv`, `mf` eller et nummer.
- **Løsning:** Brug koderne uden punktum og uden "sal".

### Id'er

- **Symptom:** `/adresser?id=…` giver `[]`, selv om id'et er gyldigt.
- **Årsag:** Id'et er en adgangsadresses id. Adresser og adgangsadresser har forskellige id'er.
- **Løsning:** Brug `/adresser?adgangsadresseid=…` for at få enhederne bag en dør, eller `/adgangsadresser/{id}`. Se [Adresse eller adgangsadresse?](/guides/adresse-vs-adgangsadresse)

### Koordinater

- **Symptom:** `cirkel=` giver `[]`, eller reverse giver 404 `No address within range`.
- **Årsag:** Længde og bredde er byttet om, UTM-koordinater er sendt uden `srid=25832`, eller radius er for lille. Rækkefølgen er altid længde, bredde: `cirkel=12.5683,55.6761,100`.
- **Løsning:** Se [Koordinater og srid](/guides/koordinater-srid).

### Autocomplete

**Symptom:** `/autocomplete` giver `[]`. Gå disse igennem:

- `q` er tom. En tom søgning giver altid en tom liste.
- `kommunekode=`, `postnr=` eller `adgangsadresseid=` udelukker adressen. Filtrene indsnævrer forslagene. Fjern dem og prøv igen.
- `type=vejnavn` giver kun vejnavne, og `type=adgangsadresse` stopper ved husnummeret. Uden `type` styres trinnet af det, brugeren har skrevet. Se [Adresse eller adgangsadresse?](/guides/adresse-vs-adgangsadresse)
- Etage og dør, der ikke findes på adressen (fx `3. th` i et hus uden 3. sal), giver ingen forslag.
- Tolerance over for stavefejl er et flag, som i DAWA: send `fuzzy` (eller `fuzzy=`) for at slå den til. Uden den, eller med `fuzzy=false`, giver et forkert stavet ord ingen forslag.

### Datavask

- **Symptom:** `/datavask/adresser?betegnelse=…` giver `"kategori": "C"` og `"resultater": []`.
- **Årsag:** Intet vejnavn passede. Parseren læser etage og dør (`2. tv`, `st. th`, `1.mf`), husbogstaver med små bogstaver (`12a`), et postnummer hvor som helst i teksten og stavemåder uden æøå (`Aabenraa`, `Kobenhavn`). Ord, den ikke kan placere, fx en c/o-linje, et firmanavn eller "Att.", havner i `vaskeresultat.ukendtetokens` på et match. Er `resultater` tom, findes vejen som regel ikke i det postnummer, eller teksten ligger for langt fra det officielle navn.
- **Løsning:** Send kun adresselinjerne, uden navne og c/o-linjer, eller send felterne hver for sig. Det virker både med GET og POST:

```bash id=datavask-fields run=no
curl -s -G "https://api.danadresse.dk/datavask/adresser" \
  --data-urlencode "vejnavn=Rådhuspladsen" \
  --data-urlencode "husnr=1" \
  --data-urlencode "etage=st" \
  --data-urlencode "dør=th" \
  --data-urlencode "postnr=4200" \
  -H "X-Api-Key: $DANADRESSE_API_KEY"
```

## Det modsatte: for mange resultater

Et parameternavn, API'et ikke kender, bliver ignoreret uden fejl, som i DAWA. Kendte filtre filtrerer. `?postnummer=8000` filtrerer ikke på noget, og du får de første adresser i hele landet. Får du resultater, der ikke passer til filteret, så tjek stavningen. Se [Fejl 400 og 404](/guides/fejl-400-og-404) for en funktion, der fanger ukendte parametre.

## Næste skridt

- [Fejl 400 og 404](/guides/fejl-400-og-404)
- [Æ, ø og å: tegnsæt og URL-kodning](/guides/aeoeaa-tegnsaet)
- [Koordinater og srid](/guides/koordinater-srid)
