Gratis nummerplade API
Vi stiller et gratis REST API til rådighed, som giver dig direkte adgang til køretøjsdata fra det danske Motorregister. Med en simpel HTTP-forespørgsel kan du slå enhver dansk nummerplade op og få mærke, model, tekniske specifikationer, synshistorik, miljødata og meget mere retur som struktureret JSON.
Aftalen er enkel: du placerer et link til nummerplade-tjek.dk på din hjemmeside, og vi giver dig en API-nøgle med op til 500 opslag pr. dag. Ingen kreditkort, ingen abonnementer, ingen skjulte begrænsninger. Bare et link.
API-et er velegnet til udviklerværktøjer, bilrelaterede apps, prisberegninger, værkstedssystemer og alle andre projekter, der har brug for danske køretøjsoplysninger.
Sådan får du en API-nøgle
Processen tager under fem minutter, og du kan begynde at lave opslag med det samme.
- Tilføj et link til nummerplade-tjek.dk på din hjemmeside. Det kan stå i footeren, på en ressource-side, i et blogindlæg eller hvor det ellers giver mening. Linket skal pege på
https://nummerplade-tjek.dkeller en underside. Det vigtige er, at det er synligt og tilgængeligt for søgemaskiner. - Registrer dig på vores registreringsside med din e-mail, din hjemmesides URL og den specifikke URL, hvor linket er placeret.
- Vi tjekker linket automatisk og sender dig en API-nøgle med det samme. Hele processen er automatiseret, så du behøver ikke vente på en manuel godkendelse.
Endpoint
Alle opslag går til et enkelt endpoint:
GET https://nummerplade-tjek.dk/api/v1/vehicles/{nummerplade}
Erstat {nummerplade} med den nummerplade, du vil slå op. Mellemrum og bindestreger bliver ignoreret, og bogstaver konverteres automatisk til store bogstaver. Du kan altså sende både AB12345 og ab 12 345.
Autentificering
Send din API-nøgle som en HTTP-header med navnet X-API-Key:
X-API-Key: din_api_nøgle Alle forespørgsler uden en gyldig API-nøgle returnerer HTTP 401. Nøgler, der er deaktiveret på grund af manglende backlink, returnerer HTTP 403.
Eksempel med curl
Her er et komplet eksempel, der slår nummerpladen AB12345 op:
curl -H "X-API-Key: dk_live_abc123def456" \
https://nummerplade-tjek.dk/api/v1/vehicles/AB12345 Svarformat
Et vellykket opslag returnerer HTTP 200 med følgende JSON-struktur:
{
"status": "ok",
"data": {
"plate": "AB12345",
"vehicle": {
"registration_number": "AB12345",
"status": "Registreret",
"type": "Personbil",
"make": "AUDI",
"model": "A6 AVANT",
"variant": "3.0 TDI QUATTRO",
"model_year": 2019,
"color": "Sort",
"chassis_type": "Stationcar",
"vin": "WAUZZZ4G3KN012345",
"engine_cylinders": 6,
"engine_volume": 2967,
"engine_power": 170,
"fuel_type": "Diesel",
"is_hybrid": false,
"total_weight": 2520,
"seats": 5,
"doors": 4,
"trailer_maxweight_withbrakes": 2500,
"mot_info": {
"date": "2024-03-15",
"result": "Godkendt",
"mileage": 87432,
"next_inspection_date": "2026-03-15"
}
},
"environment": {
"co2_emission": 149,
"euro_norm": "Euro 6",
"fuel_usage": 18.5,
"particle_filter": 1,
"driving_noise": 72
},
"equipment": [
{ "id": "ABS", "name": "ABS bremser", "quantity": 1 },
{ "id": "AIRBAG", "name": "Airbag", "quantity": 6 },
{ "id": "ESP", "name": "ESP", "quantity": 1 }
]
},
"source": "Motorregistret via nummerplade-tjek.dk",
"timestamp": "2026-03-17T10:30:00.000Z"
} Felter i vehicle-objektet
| Felt | Type | Beskrivelse |
|---|---|---|
registration_number | string | Nummerpladen i standardformat |
status | string | Registreringsstatus (fx "Registreret", "Afmeldt") |
type | string | Køretøjstype (fx "Personbil", "Varebil") |
make | string | Bilmærke (fx "AUDI", "BMW", "VOLKSWAGEN") |
model | string | Model (fx "A6 AVANT", "3-SERIE") |
variant | string | Variant (fx "3.0 TDI QUATTRO") |
model_year | number | Modelår |
color | string | Farve (fx "Sort", "Hvid") |
chassis_type | string | Karosseritype (fx "Stationcar", "Sedan") |
vin | string | Stelnummer (Vehicle Identification Number) |
engine_cylinders | number | Antal cylindre |
engine_volume | number | Motorvolumen i kubikcentimeter |
engine_power | number | Motoreffekt i kW |
fuel_type | string | Brændstoftype (fx "Benzin", "Diesel", "El") |
is_hybrid | boolean | Om køretøjet er en hybrid |
total_weight | number | Totalvægt i kg |
seats | number | Antal siddepladser |
doors | number | Antal døre |
trailer_maxweight_withbrakes | number | Maks. tilladelig totalvægt for påhængskøretøj med bremser (kg) |
Felter i mot_info-objektet
| Felt | Type | Beskrivelse |
|---|---|---|
date | string | Dato for seneste syn (ISO 8601) |
result | string | Resultat af seneste syn (fx "Godkendt", "Ikke godkendt") |
mileage | number | Kilometertal ved seneste syn |
next_inspection_date | string | Dato for næste periodiske syn (ISO 8601) |
Felter i environment-objektet
| Felt | Type | Beskrivelse |
|---|---|---|
co2_emission | number | CO2-udledning i g/km |
euro_norm | string | Euronorm (fx "Euro 6", "Euro 5") |
fuel_usage | number | Brændstofforbrug i km/l |
particle_filter | number | Partikelfilter (1 = ja, 0 = nej) |
driving_noise | number | Støjniveau ved kørsel i dB |
Felter i equipment-arrayet
| Felt | Type | Beskrivelse |
|---|---|---|
id | string | Udstyrets identifikationskode |
name | string | Udstyrets navn (fx "ABS bremser", "Airbag") |
quantity | number | Antal (fx 6 airbags) |
Alle felter kan være null eller mangle helt, hvis Motorregistret ikke har data for det pågældende køretøj. Din kode bør håndtere manglende felter.
Fejlkoder
Når noget går galt, returnerer API-et en JSON-body med et error-felt og en passende HTTP-statuskode:
| HTTP-kode | Betydning | Typisk årsag |
|---|---|---|
400 | Ugyldig forespørgsel | Nummerpladen har et ugyldigt format |
401 | Ikke autoriseret | API-nøgle mangler eller er ugyldig |
403 | Adgang nægtet | API-nøglen er deaktiveret (typisk manglende backlink) |
404 | Ikke fundet | Nummerpladen findes ikke i Motorregistret |
429 | For mange forespørgsler | Den daglige grænse på 500 opslag er nået |
502 | Serverfejl | Midlertidig fejl i forbindelse med datakilden |
Fejlsvar har altid denne struktur:
{
"error": "Beskrivelse af fejlen"
} Kodeeksempler
Herunder finder du eksempler på, hvordan du bruger API-et i de mest almindelige programmeringssprog.
JavaScript (fetch)
async function hentKøretøj(nummerplade, apiKey) {
const response = await fetch(
`https://nummerplade-tjek.dk/api/v1/vehicles/${nummerplade}`,
{
headers: {
'X-API-Key': apiKey,
},
}
);
if (!response.ok) {
const fejl = await response.json();
throw new Error(fejl.error || 'Ukendt fejl');
}
const data = await response.json();
return data;
}
// Brug:
hentKøretøj('AB12345', 'dk_live_abc123def456')
.then((resultat) => {
console.log(resultat.data.vehicle.make);
console.log(resultat.data.vehicle.model);
})
.catch((fejl) => {
console.error('Fejl:', fejl.message);
}); Python (requests)
import requests
def hent_køretøj(nummerplade: str, api_key: str) -> dict:
url = f"https://nummerplade-tjek.dk/api/v1/vehicles/{nummerplade}"
headers = {"X-API-Key": api_key}
response = requests.get(url, headers=headers)
response.raise_for_status()
return response.json()
# Brug:
try:
resultat = hent_køretøj("AB12345", "dk_live_abc123def456")
køretøj = resultat["data"]["vehicle"]
print(f"{køretøj['make']} {køretøj['model']} ({køretøj['model_year']})")
except requests.HTTPError as e:
print(f"Fejl: {e.response.json().get('error', 'Ukendt fejl')}") PHP (cURL)
<?php
function hentKoeretoel(string $nummerplade, string $apiKey): array {
$url = "https://nummerplade-tjek.dk/api/v1/vehicles/" . urlencode($nummerplade);
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-API-Key: " . $apiKey,
],
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$data = json_decode($response, true);
if ($httpCode !== 200) {
throw new Exception($data['error'] ?? 'Ukendt fejl');
}
return $data;
}
// Brug:
try {
$resultat = hentKoeretoel("AB12345", "dk_live_abc123def456");
$bil = $resultat['data']['vehicle'];
echo $bil['make'] . " " . $bil['model'] . " (" . $bil['model_year'] . ")\n";
} catch (Exception $e) {
echo "Fejl: " . $e->getMessage() . "\n";
}
?> Vilkår
Når du bruger vores API, accepterer du følgende vilkår:
- 500 opslag pr. dag per API-nøgle. Tælleren nulstilles ved midnat UTC.
- Backlinket skal forblive aktivt. Det link, du angav ved registrering, skal være tilgængeligt og synligt for søgemaskiner. Brug ikke
nofollowellernoindexpå linket. - Vi tjekker backlinks ugentligt. Hvis vi ikke kan finde dit link i tre på hinanden følgende uger, deaktiverer vi nøglen automatisk. Du får ingen advarsel, men du kan altid genaktivere ved at genindsætte linket og kontakte os.
- Data opdateres ugentligt fra Motorregistret. Oplysningerne er derfor aldrig mere end en uge gamle, men de er heller ikke realtidsdata.
- Lokal caching er tilladt. Du må gerne cache API-svar lokalt for at reducere antallet af forespørgsler.
- Ingen videresalg af rå data. Du må bruge data i dine apps og tjenester, men du må ikke videresælge det rå JSON-svar til tredjeparter.
- Kreditering. Angiv gerne "Data fra Nummerplade Tjek" eller lignende i din app. Det er ikke et krav, men vi sætter pris på det.
- Fair use. Automatiserede masseforespørgsler med det formål at kopiere hele databasen er ikke tilladt.
Ofte stillede spørgsmål
Er API-nøglen virkelig gratis?
Ja. Du betaler ikke noget for at bruge vores API. Til gengæld beder vi om, at du placerer et link til nummerplade-tjek.dk på din hjemmeside. Så længe linket er aktivt, har du fuld adgang til 500 opslag om dagen.
Hvad sker der, hvis jeg fjerner mit backlink?
Vi tjekker backlinks ugentligt. Hvis vi ikke kan finde dit link i tre på hinanden følgende uger, deaktiverer vi nøglen automatisk. Du kan genaktivere den ved at tilføje linket igen og kontakte os på [email protected].
Kan jeg få flere end 500 opslag om dagen?
Standard-grænsen er 500 daglige opslag. Har du brug for mere, så skriv til [email protected], og vi finder en løsning.
Hvilke data returnerer API-et?
Du får adgang til køretøjsoplysninger fra Motorregistret: mærke, model, variant, årgang, farve, motor, brændstof, vægt, sæder, døre, VIN, synshistorik, euronorm, CO2-udledning, brændstofforbrug og udstyr. Forsikringsoplysninger er ikke inkluderet i API-svaret.
Kom i gang
Klar til at hente køretøjsdata? Registrer dig her og få din API-nøgle med det samme. Processen tager under fem minutter, og du kan begynde at lave opslag lige efter.
Har du spørgsmål, der ikke er dækket her? Skriv til os på [email protected], så vender vi tilbage hurtigst muligt.