Find a Danish company by email or domain

Two endpoints search the email addresses companies have registered in CVR: one for a specific address and one for a whole domain. It's handy when you want to link a sign-up or lead to the right CVR number.

Search by email address

bash
curl https://apicvr.dk/api/v1/search/email/[email protected]

Search by domain

Pass the domain without @ – the API adds it for you:

bash
curl https://apicvr.dk/api/v1/search/email-domain/vestas.dk

Example response

Both endpoints return a list of full company profiles:

json
[
  {
    "vat": 10403782,
    "name": "VESTAS WIND SYSTEMS A/S",
    "address": "Hedeager 42",
    "zipcode": 8200,
    "city": "Aarhus N",
    "phone": "97300000",
    "email": "[email protected]",
    "status": "NORMAL",
    "protected": false,
    ...
  },
  ...
]

Filter for exact matches

The search is full-text, so it also returns companies that merely share words with the address – other companies with vestas in their email, or no email at all. Check the email field yourself:

javascript
async function companiesForEmail(email) {
  const url = `https://apicvr.dk/api/v1/search/email/${encodeURIComponent(email)}?limit=20`;
  const res = await fetch(url);
  if (!res.ok) throw new Error(`HTTP ${res.status}`);
  const companies = await res.json();
  return companies.filter(
    (c) => c.email && c.email.toLowerCase() === email.toLowerCase()
  );
}

async function companiesForDomain(domain) {
  const res = await fetch(`https://apicvr.dk/api/v1/search/email-domain/${domain}?limit=50`);
  const companies = await res.json();
  return companies.filter((c) => c.email?.toLowerCase().endsWith("@" + domain));
}

Limitations

Frequently asked questions

Can I find a company from an employee's email?

Only if that exact address is registered in CVR. Use the domain search instead and check the domain in the email field.

Why does the response include companies with a different email?

The search matches words in the address, not the whole address. Filter on the email field if you only want exact matches.