API-dokumentasjon
Basis-URL: https://bompengeappen.no. Alle svar er JSON (UTF-8).
Dataene kommer direkte fra Statens vegvesen (Ruteplan v3, Autosys, NVDB) —
samme kilder som AutoPASS-operatørene bruker.
Trenger du en nøkkel? Hent en gratis i API-portalen.
Autentisering
Send API-nøkkelen din i hver forespørsel — enten som Authorization-header (anbefalt) eller X-API-Key:
curl -H "Authorization: Bearer bka_DIN_NOKKEL" \
"https://bompengeappen.no/api/vehicle?plate=DR27336"
# eller:
curl -H "X-API-Key: bka_DIN_NOKKEL" \
"https://bompengeappen.no/api/route?from=59.9139,10.7522&to=59.7440,10.2045&refine=1"
Nøkkelen finner (og roterer) du i API-portalen. Hold den hemmelig — bruk den kun server-til-server, aldri i frontend-kode.
Kvoter og feilkoder
Kvoten gjelder per kalenderdag (nullstilles ved midnatt norsk tid) og telles på
/api/route, /api/route-osrm og /api/vehicle.
Øvrige endepunkter er gratis å kalle med gyldig nøkkel.
| Plan | Kall per dag | Pris |
|---|---|---|
| Gratis | 500 | 0 kr |
| Pilot | 5 000 | 1 399 kr/mnd |
| Enterprise | Etter avtale | Kontakt oss |
Hvert svar inneholder kvotestatus i headerne:
X-API-Quota-Limit: 5000 X-API-Quota-Remaining: 4998
| HTTP | Body | Betyr |
|---|---|---|
401 | {"error":"invalid_api_key"} | Ukjent eller rotert nøkkel. |
403 | {"error":"subscription_inactive"} | Betaling feilet eller abonnement stoppet — ordnes i portalen. |
429 | {"error":"quota_exceeded"} | Dagskvoten er brukt. Retry-After-headeren sier sekunder til midnatt. |
400 | {"error":…} | Manglende/ugyldige parametre — se feilmeldingen. |
404 | {"error":"not_found"} / {"error":"route_not_possible"} | Ukjent regnr på /api/vehicle, eller ingen kjørbar rute mellom punktene på /api/route. |
502/503 | {"error":…} | Statens vegvesen midlertidig nede — prøv igjen om litt. |
Kjøretøyoppslag
Slår opp et norsk registreringsnummer i Statens vegvesens kjøretøyregister (Autosys).
Mellomrom i regnr er ok. Svaret er SVV-objektet kjoretoydataListe med
tekniske data — mest relevant for bompenger:
- Drivstoff (el/diesel/bensin) → elbiler får rabatt hos de fleste operatører
- Vekt/klasse → over 3 500 kg = takstgruppe 2 («stor bil»)
curl -H "Authorization: Bearer bka_…" \
"https://bompengeappen.no/api/vehicle?plate=DR27336"
{
"kjoretoydataListe": [{
"kjoretoyId": { "kjennemerke": "DR 27336", … },
"forstegangsregistrering": { "registrertForstegangNorgeDato": "2017-04-28" },
"godkjenning": { "tekniskGodkjenning": { "tekniskeData": {
"miljodata": { "miljoOgdrivstoffGruppe": [ { "drivstoffKodeMiljodata": { "kodeNavn": "Diesel" } } ] },
"vekter": { "egenvektMinimum": 1845, "tillattTotalvekt": 2450 }, …
} } }, …
}]
}
Tips: kjøretøydata endrer seg sjelden — slå opp én gang per kjøretøy og mellomlagre resultatet hos dere i stedet for å bruke kvote på hver tur.
Ruteberegning med eksakte bompenger
Beregner rute(r) via Statens vegvesen Ruteplan v3 og priser hver bomstasjon på ruten. Rushtidstakster, timesregelen (du betaler kun dyreste passering per ring innen 60 min) og AutoPASS-rabatt er regnet inn.
| Parameter | Eksempel | Beskrivelse |
|---|---|---|
from påkrevd | 59.9139,10.7522 | Start, WGS84 lat,lon |
to påkrevd | 59.7440,10.2045 | Mål, WGS84 lat,lon |
refine | 1 | Anbefalt. NVDB-eksakt bompengeberegning. Uten: raskere svar med foreløpige takster. |
startTime | 2026-06-15T08:30:00+02:00 | Avreisetid (ISO 8601). Styrer rushtidstakst og timesregel. Standard: nå. |
via | 59.83,10.43|59.80,10.30 | Viapunkter, |-separert |
heavy | 1 | Kjøretøy over 3 500 kg (takstgruppe 2) |
avoidTolls | 1 | Foretrekk bomfri rute der det finnes |
Svaret har to deler: routes (SVV-rutegeometri som GeoJSON-features —
NB: geometri-koordinatene er UTM33 / EPSG:25833 easting,northing, ikke
WGS84 lon,lat) og _billing — det dere trenger for kostnad:
curl -H "Authorization: Bearer bka_…" \
"https://bompengeappen.no/api/route?from=59.9139,10.7522&to=59.7440,10.2045&refine=1&startTime=2026-06-15T08:30:00%2B02:00"
{
"routes": [ { "routeId": "3cee7bdd-…", "features": [ … geometri … ] }, … ],
"_billing": {
"source": "svv-ruteplan-v3",
"refined": true, // true = NVDB-eksakt + timesregel-korrigert
"routes": [{
"routeId": "3cee7bdd-…", // matcher routes[i].routeId
"tollSmall": 33.6, // NOK, liten bil MED AutoPASS-avtale (20 % rabatt)
"tollSmallNoDiscount": 42, // NOK, liten bil uten brikke
"tollLarge": 100, // NOK, stor bil (>3,5 t)
"tollLargeNoDiscount": 100,
"tollCount": 1, // antall belastede passeringer
"rush": true, // rushtidstakst brukt (hverdag 06:30–09 / 15–17)
"ferryCount": 0,
"distance": 44280, // meter
"durationMin": 43, // minutter (durationSec finnes også, men inneholder av historiske grunner samme minutt-verdi — bruk durationMin)
"chargedStations": [ { "name": "…", "smallNok": 42, … } ]
}]
}
}
tollSmall (med brikke) eller tollSmallNoDiscount (uten) fra
_billing.routes[0], og send startTime = faktisk avreisetidspunkt
så rushtid og timesregel blir riktig._billing til priser.
routes[].statistic er SVV sine rå bruttosummer (tallene er strenger, uten
AutoPASS-rabatt og uten timesregel) og kan være opptil flere ganger høyere enn riktig
billettpris. Hvis NVDB-matching er midlertidig utilgjengelig svarer API-et med
"refined": false og "refineFallback": true — da er totalene
SVV-råtall; prøv kallet på nytt for eksakte takster. Ukjente registreringsnumre på
/api/vehicle gir 404 {"error":"not_found"}.Alternativ ruteberegning (beta)
Uavhengig rutemotor (OSRM) med estimerte bompenger — nyttig som
sammenligning eller fallback. Samme from/to/via/startTime-parametre.
Svar i samme form som /api/route, men takstene er flagget som estimat
("source": "osrm-estimat"). Best effort: kan svare 502.
Ferjekaier
Alle norske ferjekaier (NVDB objekttype 64) med navn og koordinater. Mellomlagres hos oss i 24 t — teller ikke på kvoten.
Datasett
Rådata som JSON-dumper — gratis, teller ikke på kvoten, oppdateres fra NVDB:
| URL | Innhold |
|---|---|
/data/toll-stations.json | 438+ bomstasjoner: takster (liten/stor, rush), operatør, timesregel-gruppe, koordinater, kommune |
/data/speed-cameras.json | 450 fotobokser (NVDB ATK-punkt) med koordinater |
Oppskrift: bompenger på reiseregningen
Typisk flyt for et reiseregnings-/CRM-system:
- 1. Ved registrering av firmabil/ansattbil:
GET /api/vehicle?plate=…én gang → lagre drivstoff + vektklasse hos dere. - 2. Per tur:
GET /api/route?from=…&to=…&refine=1&startTime=<avreise>(+heavy=1hvis >3,5 t). - 3. Les
_billing.routes[0].tollSmall(med AutoPASS) ellertollSmallNoDiscount(uten) → før beløpet på reiseregningen. Tur-retur = to kall med hver sinstartTime(takstene kan være retningsavhengige).
Adresse → koordinater: bruk f.eks. Entur Geocoder
(gratis, norsk dekning) før kallet til /api/route.
Support
Tekniske spørsmål: hello@bompengeappen.no — vi svarer raskt på hverdager. Endringer i API-et varsles på e-post til alle aktive kunder i god tid.