Denmark Company Register (CVR): New Danish Companies API
Pricing
from $3.00 / 1,000 companies
Denmark Company Register (CVR): New Danish Companies API
Danish companies from the official CVR register: CVR number, name, legal form, industry, address, status, advertising-protection flag. Daily new-company feed, no API key needed. $3 per 1,000. No personal data.
Pricing
from $3.00 / 1,000 companies
Rating
0.0
(0)
Developer
WRTLabs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Security
Limited permissionsShare
Danish companies from the official Central Business Register (CVR) of the Danish Business Authority (Erhvervsstyrelsen), read through the official Datafordeler API, in one clean format: name, CVR number, legal form, industry, address, status and the advertising-protection flag. Filter by start date, legal form, industry code, municipality and status, or schedule it daily and get only the new companies.
No logins, no website scraping, and no personal data: sole proprietorships and other person-owned businesses are left out, and no contact persons, owners, emails or phones are returned.
What you get
One row per company:
| Field | Example |
|---|---|
cvr_number (= id) | 46885686 |
name | DD Media ApS |
legal_form_code, legal_form | 80, Anpartsselskab |
status | active or inactive (ceased) |
start_date, end_date | 2026-10-29, null |
industry_code, industry | 603100, Nyhedsbureauers aktiviteter (main industry, Danish code list) |
street, postal_code, city | Njalsgade 21F, 2., 2300, København S |
municipality_code, municipality, country_code | 101, KØBENHAVN, DK |
advertising_protected | true = the company has opted out of direct marketing (reklamebeskyttelse) |
cvr_url | link to the company's page on datacvr.virk.dk |
licence, licence_url, attribution | CC BY 4.0 and the source credit, kept on every row |
Example record:
{"id": "46885686", "cvr_number": "46885686", "name": "DD Media ApS", "status": "active","start_date": "2026-10-29", "end_date": null, "legal_form_code": "80", "legal_form": "Anpartsselskab","industry_code": "603100", "industry": "Nyhedsbureauers aktiviteter","street": "Njalsgade 21F, 2.", "postal_code": "2300", "city": "København S","municipality_code": "101", "municipality": "KØBENHAVN", "country_code": "DK","advertising_protected": true, "cvr_url": "https://datacvr.virk.dk/enhed/virksomhed/46885686","licence": "CC-BY-4.0", "licence_url": "https://creativecommons.org/licenses/by/4.0/","attribution": "Source: Det Centrale Virksomhedsregister (CVR), Erhvervsstyrelsen, via Datafordeler. Licensed under CC BY 4.0."}
Each run also saves a run report (RUN_REPORT in the key-value store, linked on the Output tab):
pages fetched, companies delivered, invalid records dropped, block rate, and whether the run
collected everything.
Coverage note: all legal entities in CVR whose start date falls in your window, except person-owned forms, which are never returned: Enkeltmandsvirksomhed, Personligt ejet Mindre Virksomhed, Dødsbo, Interessentskab and Partsrederi (their names are usually the owners' names), plus the catch-all form Øvrige virksomhedsformer (owner type unclear) and the rare entries without a registered legal form. Production units (P-numbers), owners, board members, financial statements and employee counts are not included. Addresses are the registered business address; c/o names are never returned.
Advertising protection: companies that opted out of direct marketing are kept and flagged
with advertising_protected: true (in new registrations this is most of them). These companies
must not be contacted for direct marketing based on the CVR data: filter on this field before any
marketing use.
Freshness: each run reads the current register from Datafordeler at run time.
Input
| Option | Default | |
|---|---|---|
| Started from / to | last 7 days | company start date window, YYYY-MM-DD |
| Legal forms | (all) | ApS, A/S, IVS, K/S, P/S, AMBA, a CVR form code (80) or part of the Danish name (forening) |
| Industry codes | (all) | prefix of the 6-digit industry code, e.g. 62 |
| Municipalities | (all) | code (101 = Copenhagen, 751 = Aarhus) or name as in CVR |
| Status | any | active only / inactive only |
| Name keywords | (all) | matches the company name, any word |
| Max results | 1000 (form starts at 50 for a quick test) | hard stop, so you control cost |
| Only new since last run | off | turn on and schedule daily to get a fresh feed |
Limits
- One run makes at most 2,000 API requests (polite use of a public service, one request at a time). Without filters that is about 15,000 companies in roughly 75 minutes (about 200 companies per minute); narrow filters cost more requests per delivered company. If a run stops at this limit, the status message says "results may be incomplete": continue with a shorter date range. For the whole register use several runs with consecutive date ranges.
- Default run timeout is 2 hours; raise it in the run options only if you run very wide filters.
- For a daily feed, use a short window (the default 7 days is fine) with Only new on.
Typical uses
- Daily list of newly registered Danish companies (ApS, A/S, associations) for market monitoring, B2B onboarding or KYB pre-checks.
- Company lists by industry and municipality for market research.
- Watching for ceased companies (status
inactive,end_date).
Pricing
Pay per result: you pay only for companies delivered to your dataset. See the Pricing tab. The Actor stops when it reaches the max cost per run you set.
How it behaves
- Uses the official Datafordeler GraphQL API with the Actor owner's own free API key; one request at a time, at least 2 seconds apart, slowing down automatically if the service rate-limits.
- Only organisation-level data is requested; person data in CVR (owners, participants, emails, phones) is never requested.
- Every record is checked against the output schema before delivery. Broken records are dropped (you are not charged for them) and counted in the run report. If more than 5% fail the check, the run is marked Failed, so a change on the source side never goes unnoticed.
Data licence and attribution
The CVR data is free basic data under Creative Commons Attribution 4.0 (CC BY 4.0). Re-use of the output must keep the attribution in each row:
- Source: Det Centrale Virksomhedsregister (CVR), Erhvervsstyrelsen, via Datafordeler. Licensed under CC BY 4.0. (https://creativecommons.org/licenses/by/4.0/)
This Actor is not affiliated with or endorsed by Erhvervsstyrelsen or Datafordeler.