API Documentation

Integrate real-time Danish vehicle registry (DMR) and company registry (CVR) data into your applications. One API — two powerful datasets.

Getting Started

1
Create an Account

Sign up for free and get an API key instantly.

2
Get Your API Key

Find your key in the dashboard under API Keys.

3
Make Requests

Send requests with your key in the X-API-KEY header.

Authentication

All API requests require an API key sent in the X-API-KEY header.

Header
X-API-KEY: your_api_key_here

Vehicle API

Look up any vehicle registered in Denmark by VIN or registration number. Get full technical specs, inspection history, equipment, fuel data, and more.

Brand, model, variant & type
Engine specs: cylinders, HP, displacement
Fuel type & consumption data
Full inspection (syn) history
Equipment list
Registration status & dates
Environmental data & emissions
GET /api/v1/vehicles/{ident}

ident — VIN (chassis no.) or registration number

curl -H "X-API-KEY: your_api_key" \
  https://soge.dk/api/v1/vehicles/AB12345

Response Example

200 OK application/json
{
  "data": {
    "vehicle": {
      "koeretoej_ident": "9000012345",
      "stel_nummer": "WVWZZZ3CZWE123456",
      "registrering_nummer": "AB12345",
      "brand": "Volkswagen",
      "model": "Golf",
      "variant": "1.4 TSI Comfortline",
      "type": "Personbil",
      "status": "Registreret",
      "first_registration": "2020-03-15",
      "color": null,
      "total_weight": 1785,
      "curb_weight": 1310,
      "seats": 5,
      "doors": 4,
      "motor": {
        "cylinders": 4,
        "displacement": 1395,
        "max_power_kw": 110,
        "max_power_hp": 150,
        "max_rpm": 5000,
        "mileage": 87432
      },
      "fuel": {
        "type": "Benzin",
        "consumption_mixed": 5.2,
        "consumption_city": 6.8,
        "consumption_highway": 4.3,
        "co2_emission": 120
      },
      "environment": {
        "emission_norm": "Euro 6",
        "particle_filter": true
      }
    },
    "equipment": [
      "ABS", "Airbag", "Klimaanlaeg",
      "Fartpilot", "Parkeringssensor"
    ],
    "syn": [
      {
        "date": "2024-03-10",
        "result": "Godkendt",
        "mileage": 87432
      },
      {
        "date": "2022-03-05",
        "result": "Godkendt",
        "mileage": 54210
      }
    ],
    "permissions": []
  }
}

Company API

Search Danish companies by CVR number or name. Access company details, industry codes, employee data, founders, and more from the official CVR registry.

Company name, form & status
CVR number & P-numbers
Industry codes (primary & secondary)
Employee count & intervals
Founder & participant details
Address & contact information
Company lifecycle & history
GET /api/v1/companies/{search_term}

search_term — CVR number or company name

curl -H "X-API-KEY: your_api_key" \
  https://soge.dk/api/v1/companies/12345678

Response Example

200 OK application/json
{
  "data": {
    "hits": {
      "total": { "value": 1 },
      "hits": [
        {
          "_source": {
            "Vrvirksomhed": {
              "cvrNummer": 12345678,
              "virksomhedMetadata": {
                "nyesteNavn": {
                  "navn": "Example ApS"
                },
                "nyesteVirksomhedsform": {
                  "langBeskrivelse": "Anpartsselskab"
                },
                "nyesteHovedbranche": {
                  "branchekode": "620100",
                  "branchetekst": "Computerprogrammering"
                },
                "nyesteBeliggenhedsadresse": {
                  "vejnavn": "Vestergade",
                  "husnummerFra": 10,
                  "postnummer": 1456,
                  "postdistrikt": "Copenhagen K"
                }
              },
              "virksomhedsstatus": [
                {
                  "status": "NORMAL"
                }
              ],
              "deltagerRelation": [
                {
                  "deltager": {
                    "navne": [
                      { "navn": "John Doe" }
                    ]
                  }
                }
              ]
            }
          }
        }
      ]
    }
  }
}

Rate Limits

Free Free: 3 req/min, 1,000 req/day
Standard Standard: 120 req/min, 10,000 req/day
Business Business: 600 req/min, 100,000 req/day
Need more requests? Upgrade your plan

Error Codes

200 OK — Request successful
401 Unauthorized — Invalid or missing API key
403 Forbidden — API key is inactive
404 Not found — Vehicle or company not found
429 Too many requests — Rate limit exceeded

Integration scenarios

🚗 Car dealer website Show full vehicle history (DMR, inspections, mileage, insurance, recalls) on each listing by VIN or plate.
🏢 CRM / accounting Auto-fill company data from CVR — name, address, status, owners, financials — when adding a customer.
🔍 Counterparty check Risk-screen a company before a deal: status, owner bankruptcies, the ownership & risk network.
🔔 Monitoring & alerts Track changes on vehicles or companies (owner, status) across your portfolio.

FAQ

How do I get an API key?
Register a free account, open your dashboard and generate a key. Send it as the X-API-KEY header.
What are the rate limits?
Tiered by plan: Free, Standard and Business — see the Rate limits section above. Upgrade anytime.
What input formats are accepted?
Vehicles: 17-char VIN or registration plate (e.g. AB12345). Companies: 8-digit CVR number or free-text name.
Can I use it commercially?
Yes — on the paid plans. Data comes from official Danish registries (DMR, CVR).
How fresh is the data?
Vehicle data refreshes from the DMR ETL (weekly); company (CVR) data is fetched live.
Is there a free trial?
Yes — the Free plan lets you try every endpoint within its rate limit, no card required.

Health check

GET /api/v1/health No auth
{ "status": "healthy", "service": "Soge.dk API", "version": "1.0.0" }