PlateRunner er et almindeligt HTTP-API, så du kan bruge fetch direkte. Det vigtige er, at nøglen bliver på din server.
På serveren (Node 18+)
export async function lookupPlate(country, plate) {
const clean = plate.replace(/[\s-]/g, '').toUpperCase();
const res = await fetch(
`https://api.platerunner.dk/v1/plates/${country}/${encodeURIComponent(clean)}`,
{ headers: { Authorization: `Bearer ${process.env.PLATERUNNER_KEY}` } }
);
if (res.status === 404) return null;
if (!res.ok) throw new Error(`PlateRunner svarede ${res.status}`);
return res.json();
}
const car = await lookupPlate('DK', 'AB 12 345');
console.log(car ? `${car.make} ${car.model}` : 'Ikke fundet');
Når opslaget starter i browseren
Kald aldrig PlateRunner direkte fra browseren, for så kan alle se din nøgle. Lav i stedet en lille rute på din egen server, som browseren kalder:
// fx i Express
app.get('/api/plate/:country/:plate', async (req, res) => {
const car = await lookupPlate(req.params.country, req.params.plate);
if (!car) return res.status(404).end();
res.json({ make: car.make, model: car.model, variant: car.variant });
});
Så sender du kun de felter videre, din side har brug for.
Gem svaret
Gem bilens data i din egen database første gang. Samme bil skal ikke slås op igen, og det sparer opslag.
Se kom i gang for alle felter og fejlkoder.