Same paths, same response shape. Just change the base URL and add your X-Api-Key — the rest of your code is unchanged.
curl "https://dawa.aws.dk/autocomplete?q=rådhuspladsen"
curl "https://api.danadresse.dk/autocomplete?q=rådhuspladsen" \
-H "X-Api-Key: dawa_live_…"
fetch("https://dawa.aws.dk/autocomplete?q=rådhuspladsen")
fetch("https://api.danadresse.dk/autocomplete?q=rådhuspladsen", {
headers: { "X-Api-Key": "dawa_live_…" }
})
requests.get("https://dawa.aws.dk/autocomplete",
params={"q": "rådhuspladsen"})
requests.get("https://api.danadresse.dk/autocomplete",
params={"q": "rådhuspladsen"},
headers={"X-Api-Key": "dawa_live_…"})
$ctx = stream_context_create();
file_get_contents("https://dawa.aws.dk/autocomplete?q=rådhuspladsen", false, $ctx);
$ctx = stream_context_create(["http" => [
"header" => "X-Api-Key: dawa_live_…"
]]);
file_get_contents("https://api.danadresse.dk/autocomplete?q=rådhuspladsen", false, $ctx);
http.Get("https://dawa.aws.dk/autocomplete?q=rådhuspladsen")
req, _ := http.NewRequest("GET",
"https://api.danadresse.dk/autocomplete?q=rådhuspladsen", nil)
req.Header.Set("X-Api-Key", "dawa_live_…")
http.DefaultClient.Do(req)
await http.GetStringAsync( "https://dawa.aws.dk/autocomplete?q=rådhuspladsen");
http.DefaultRequestHeaders.Add("X-Api-Key", "dawa_live_…");
await http.GetStringAsync(
"https://api.danadresse.dk/autocomplete?q=rådhuspladsen");
Add Danish address autocomplete to your Vue 3 app with Composition API: one watchEffect call against api.danadresse.dk and you have typo-tolerant typeahead across 2.7M Danish addresses.
ref() + watchEffect() — no store, no plugin, one component.
Proxy the API key in a Nuxt server route — the client never sees the key.
Store recent autocomplete results in a Pinia store for shared state across components.
// Vue 3 Composition API
const q = ref('')
const hits = ref([])
watchEffect(async () => {
if (!q.value) return
const r = await fetch(
`https://api.danadresse.dk/autocomplete?q=${q.value}`,
{ headers: { 'X-Api-Key': import.meta.env.VITE_DANADRESSE_KEY } }
)
hits.value = await r.json()
})
Integrate into an existing checkout flow without changing the form structure.
Server-rendered address search with full SSR support via useAsyncData.
Combine with Shopify Storefront API or WooCommerce REST — addresses validated, orders correct.
The slug /vue-adresse-autocomplete follows DAWA's conventions — same paths, same JSON shape, same UUIDs. See the migration guide for the full picture.
See also