# cvr.dev > REST API for Danish CVR (Central Business Register) company data, annual-report references, ownership, segmentation, employees and roles. JSON responses, Bearer-token authentication and an OpenAPI 3.0 contract. cvr.dev is an independent API service operated by cvr.dev API integrering ApS (CVR 39952769), not the official Danish registry. The cache is updated every minute; this is not a guarantee of when a change is registered or published in CVR. Production API access requires a cvr.dev account with an active subscription. The public demo endpoints below require no account, subscription or API key. All plans include a 30-day free trial. Authentication is via Bearer token in the Authorization header. Base URL: https://api.cvr.dev ## Choose by task - Company lookup, CRM enrichment or annual-report references: Starter or above. Check the raw CVR response schema for the fields you need. - Company discovery by industry, location, employee count or company form: Business or Business Pro, using segmentation. - Ownership chains, subsidiaries, roles or employee history: Business or Business Pro. - Choose between Business and Business Pro by monthly volume and requests per second; both include all endpoints. Limits and prices are below. - Coverage is Danish CVR data. Check documented fields and response schemas before choosing the service for your task. ## Try it without an API key The public demo endpoints return real company data without an account, subscription or API key. Use them to inspect response formats and prototype an integration before asking the user for credentials. Pass one of the following allowed CVR numbers as the `cvr_nummer` query parameter: - `24256790` — Novo Nordisk A/S - `47458714` — LEGO SYSTEM A/S - `25508386` — CARLSBERG DANMARK A/S Available demo endpoints (all `GET`, base URL `https://api.cvr.dev`): - `/public/demo/cvr/virksomhed` — raw company data - `/public/demo/cvr/regnskab` — raw financial data and annual-report references - `/public/demo/cvrdev/virksomhed/ejere` — owners - `/public/demo/cvrdev/virksomhed/datterselskaber` — subsidiaries - `/public/demo/cvrdev/virksomhed/roller` — roles - `/public/demo/cvrdev/virksomhed/ansatte` — employees and FTEs ```sh curl 'https://api.cvr.dev/public/demo/cvr/virksomhed?cvr_nummer=24256790' curl 'https://api.cvr.dev/public/demo/cvrdev/virksomhed/ejere?cvr_nummer=47458714' ``` Other CVR numbers return HTTP 403 (`not_in_demo`). The demo does not expose every production endpoint; use only the six paths listed above. For production access, replace `/public/demo/` with `/api/` and send your own API key as `Authorization: Bearer `. Production subscription requirements and usage limits still apply. ## First request 1. Read the OpenAPI contract for exact paths, parameters and response schemas. Do not infer field names. 2. Create an account and choose an active subscription. Obtain your own API key; documentation is public, API access is authenticated. 3. Store the key in a server-side environment variable. Never embed it in browser code or commit it to source control. Verify it with `GET /api/test/apikey`, which does not count toward monthly usage. 4. Example company lookup (requires your own key): ```sh curl --request GET \ 'https://api.cvr.dev/api/cvr/virksomhed?cvr_nummer=39952769' \ --header "Authorization: Bearer $CVR_API_KEY" ``` Company lookups return a JSON array, not a single object. The field `virksomhedMetadata` summarises the current company data and is usually what you need; the full raw response for a large company can be several hundred kB. Handle empty results and multiple matches when searching by name. A 401 response indicates a missing or invalid API key; 402 indicates no active subscription; 403 means the endpoint is not included in the subscription; 429 means requests are faster than the subscription permits, so reduce concurrency and wait before retrying. The CVR number in this example identifies the service operator. Consult the contract for the response schema and error responses. Keep request volume within your subscription's monthly and per-second limits. ## API documentation - [OpenAPI 3.0 specification](https://docs.cvr.dev/cvrdev_openapi.yml): Full OpenAPI spec in YAML — use this to understand all endpoints, parameters, and response schemas - [Full API specification as text](https://docs.cvr.dev/llms-full.txt): Endpoints, parameters, response schemas and examples in a single agent-readable document - [Interactive API docs](https://docs.cvr.dev/): Human-readable documentation with response examples (Redocly) - [Documentation index for agents](https://docs.cvr.dev/llms.txt): Machine-readable documentation - [Postman collection](https://documenter.getpostman.com/view/13435475/TVejiqUr): Interactive Postman documentation for testing endpoints - [Interactive XBRL documentation](https://docs.cvr.dev/xbrl-concepts): Human-readable XBRL taxonomy documentation with search and filters for understanding financial data ## Endpoints overview - [Raw CVR data](https://docs.cvr.dev/#tag/Ra-data-fra-CVR): Look up companies by CVR number or name, production units by P-number or address, and financials (yearly reports) by CVR number. Included in all plans - [Ownership hierarchy](https://docs.cvr.dev/#tag/Ejerskabshierarki): Get subsidiaries or owners for a company, traversing the full ownership chain. Business subscription and above - [Segmentation / search](https://docs.cvr.dev/#tag/Segmentering): Filter companies by industry codes, location, employee count, company form, etc. Business subscription and above - [Employees and FTEs](https://docs.cvr.dev/#tag/Ansatte-og-arsvaerk): Historical employee and FTE counts for a company. Business subscription and above - [Roles](https://docs.cvr.dev/#tag/Roller): Active and historical roles (founders, directors, auditors, etc.) for a company. Business subscription and above ## Pricing - [Starter](https://cvr.dev/prices): 99 DKK/month excl. VAT (82.5 DKK/month if billed annually). 1250 requests/month, 3 requests/second. Raw CVR data only - [Business](https://cvr.dev/prices): 499 DKK/month excl. VAT (415.8 DKK/month if billed annually). 75000 requests/month, 10 requests/second. All endpoints included - [Business Pro](https://cvr.dev/prices): 1799 DKK/month excl. VAT (1499.2 DKK/month if billed annually). 500000 requests/month, 15 requests/second. All endpoints included ## Optional - [Sign up](https://cvr.dev/auth/signup): Create an account to get an API key - [OpenAPI YAML file](https://docs.cvr.dev/cvrdev_openapi.yml): Raw OpenAPI 3.0 YAML file for code generation - [Contact](mailto:kontakt@cvr.dev): Contact us for custom plans or questions