Gå til hovedindhold
FirmaAPIFirmaAPI

Gratis plan

Gratis CVR API til udviklere

Slå danske virksomheder op via CVR-nummer, søg på navn og filtrer på branche, kommune og størrelse. Gratis-planen giver dig 1.000 opslag om måneden, og du kan have en API-nøgle i hånden på få minutter.

Hvad du får i den gratis plan

Gratis-planen er lavet til at kunne bygge en rigtig integration, ikke bare til at kigge på. Du får samme API, samme JSON-format og samme fejlkoder som de betalte planer. Forskellen ligger i kvoten og i, hvilke datablokke der er låst op.

FunktionGratis
Opslag pr. måned1.000
Requests pr. sekund2
Opslag på CVR-nummerJa
NavnesøgningJa
Avanceret søgning med filtreJa
Sandbox med test-nøglerJa
Ejere, ledelse og historikFra Basis
Regnskabsdata og produktionsenhederFra Standard

Data kommer fra Erhvervsstyrelsens CVR-register, og vi hoster i EU. Stamdata på en virksomhed omfatter blandt andet navn, adresse, status, selskabsform, branche, stiftelsesdato, antal ansatte, kapital, tegningsregel og kontaktoplysninger, når de er registreret.

Dit første opslag på få minutter

Når du har oprettet en konto, finder du nøglen i dashboardet. Nøglen starter med cvr_live_ og sendes som Bearer-token. Her er et opslag på Novo Nordisk:

Request

curl https://firmaapi.dk/api/v1/company/24256790 \
  -H "Authorization: Bearer cvr_live_din_api_nøgle"

Svar (forkortet)

{
  "cvr": "24256790",
  "name": "Novo Nordisk A/S",
  "status": "Aktiv",
  "address": "Novo Alle 1",
  "zipcode": "2880",
  "city": "Bagsværd",
  "company_type": "Aktieselskab",
  "industry_code": "212000",
  "industry_text": "Fremstilling af farmaceutiske præparater",
  "founded": "1931-11-28",
  "employees": "27151",
  "capital": 446500000,
  "capital_currency": "DKK",
  "meta": { "source": "FirmaAPI" }
}

Kald API'et fra din server og ikke fra browseren, så nøglen ikke havner i klientkode. Alle detaljer om felterne står i dokumentationen.

Find et CVR-nummer ud fra et navn

Har du kun et firmanavn, bruger du navnesøgningen. Den matcher delvise navne og returnerer CVR-nummer, adresse og status for hvert hit. Parameteren q skal være mindst to tegn.

curl "https://firmaapi.dk/api/v1/company/search?q=novo+nordisk&status=Aktiv&limit=5" \
  -H "Authorization: Bearer cvr_live_din_api_nøgle"

Svaret er et objekt med results og total. Vælg selv, hvordan brugeren skal bekræfte den rigtige virksomhed, hvis flere har næsten samme navn. Gem derefter CVR-nummeret, ikke navnet, som nøgle i dit eget system, fordi navne kan ændres.

Avanceret søgning uden ekstra pris

Den avancerede søgning er også med i den gratis plan. Du kan kombinere mere end 30 filtre, blandt andet by, postnummer, kommune, region, branchekode, selskabsform, status, antal ansatte, stiftelsesår og om virksomheden har telefon, e-mail eller hjemmeside.

Aktive IT-virksomheder i Aarhus med 10-50 ansatte

curl "https://firmaapi.dk/api/v1/search/advanced?industry=62&city=Aarhus&employees_min=10&employees_max=50&status=Aktiv&limit=20" \
  -H "Authorization: Bearer cvr_live_din_api_nøgle"

Svaret indeholder results, limit, offset og has_more. Vil du kende det samlede antal, sender du include_total=true. Du kan bruge sorteringen sort=founded:asc til at finde de ældste selskaber eller sort=employees:desc til de største.

Test uden at bruge af kvoten

Hver API-nøgle har en separat test-nøgle, der starter med cvr_test_ og vises sammen med live-nøglen, når du opretter den. Med test-nøglen svarer API'et med syntetiske data. Opslag med test-nøglen tæller ikke med i kvoten og har deres egen rate limit på 10 kald i sekundet. Svaret har headeren X-Sandbox: true, så du kan se, at det ikke er rigtige data.

Sandbox er god til at bygge og teste fejlhåndtering, paginering og din mapping af felter, før du bruger rigtige opslag. Husk at skifte til den rigtige nøgle, inden du går i produktion.

Hvornår skal du opgradere?

De fleste kan komme langt på de gratis opslag, især hvis du gemmer svar lokalt og kun slår en virksomhed op igen, når der er brug for friske data. Planlæg ud fra disse punkter:

  • Mere end 1.000 opslag om måneden. Basis giver 50.000 opslag for 79 kr om måneden.
  • Ejere og ledelse. Legale ejere, direktion og bestyrelse følger med fra Basis.
  • Mange CVR-numre ad gangen. Batch-opslag starter på Basis med op til 100 CVR-numre pr. request.
  • Regnskaber og webhooks. Regnskabsdata og besked ved konkurs og statusændringer starter på Standard (299 kr om måneden).
  • Alle events, filtre og ultimative ejere. Det kræver Professionel (469 kr om måneden).
Når du rammer en plangrænse, får du et tydeligt svar og ingen stille mangler. Eksempel: 403 PLAN_UPGRADE_REQUIRED med felterne current_plan og required_plan. Se priser og planer for den fulde sammenligning.

Håndtér de fejl, du møder først

Alle fejl har samme form: et objekt error med code og message. De, du oftest møder på den gratis plan, er:

StatusKodeHvad du gør
400INVALID_CVRValider, at CVR-nummeret er otte cifre, før du kalder
401INVALID_API_KEYTjek nøglen, og at den er aktiv
404NOT_FOUNDCVR-nummeret findes ikke, så vis en pæn besked
429RATE_LIMIT_EXCEEDEDVent det antal sekunder, Retry-After angiver
429MONTHLY_LIMIT_EXCEEDEDMånedskvoten er brugt. Vent eller opgradér

Der er kode til genforsøg og fejlhåndtering i guiderne til Python, Node.js, PHP og C#.

Ofte stillede spørgsmål

Er CVR API'et fra FirmaAPI virkelig gratis?

Ja. Gratis-planen koster 0 kr og giver 1.000 opslag om måneden med op til 2 requests i sekundet. Du skal ikke oplyse kreditkort for at oprette en konto.

Hvad sker der, når jeg har brugt mine gratis opslag?

API'et svarer med HTTP 429 og fejlkoden MONTHLY_LIMIT_EXCEEDED, og svaret indeholder felterne used og limit. Kvoten nulstilles ved månedsskiftet, eller du kan opgradere til en betalt plan.

Kan jeg bruge den gratis plan i et kommercielt produkt?

FirmaAPI er til erhvervsbrug. Læs vilkårene for de præcise betingelser, og vælg en betalt plan, hvis du har brug for flere opslag, ejere, regnskaber eller webhooks.

Kan jeg teste uden at bruge af kvoten?

Ja. Hver API-nøgle har en separat test-nøgle, der starter med cvr_test_. Med den får du syntetiske data, og opslagene tæller ikke med i kvoten. Det er den nemmeste måde at teste fejlhåndtering og udvidede felter på.

Hvorfor mangler ejere og regnskaber i mit svar?

Ejere, ledelse og historik kræver mindst Basis-planen. Regnskabsdata kræver Standard. Forsøger du at hente dem på Gratis, får du HTTP 403 med fejlkoden PLAN_UPGRADE_REQUIRED og oplysning om, hvilken plan der kræves.

Start med de gratis opslag

Opret en konto, hent din API-nøgle, og kør det første opslag fra din egen terminal.