Biluppgifter APIbiluppgifter.se ↗
Access Swedish vehicle details, valuations, ownership history, and make/model listings via the Biluppgifter.se API. Look up any plate number in 7 endpoints.
What is the Biluppgifter API?
The Biluppgifter.se API covers 7 endpoints for querying the Swedish vehicle registry, returning technical specs, inspection history, market valuations, and ownership records by registration plate. get_vehicle_by_registration alone surfaces over a dozen fields — color, power, transmission, mileage, owner history, and more — for any Swedish plate number. Separate endpoints handle valuation time series, event history, partial plate search, and make/model enumeration.
curl -X GET 'https://api.parse.bot/scraper/2125a37d-f7d6-485a-8982-22ac584a14d3/get_vehicle_by_registration?regnr=GHF663' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace biluppgifter-se-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Biluppgifter API – Swedish vehicle registry lookup and valuation."""
from parse_apis.biluppgifter_api import Biluppgifter, VehicleNotFound
client = Biluppgifter()
# List available makes and inspect the top entries
for make in client.makes.list(limit=5):
print(make.name, make.origin, make.volume)
# Construct a Make by slug and list its models
volvo = client.make("volvo")
for model in volvo.models.list(limit=5):
print(model.name, model.slug)
# Search vehicles by plate prefix, then drill into the first result
hit = client.vehiclesummaries.search(query="ABC", limit=1).first()
if hit:
vehicle = hit.details()
print(vehicle.registration_number, vehicle.model_year, vehicle.color)
# Get valuation for the vehicle
val = vehicle.valuation()
print(val.mileage_evaluated, len(val.valuation_history))
# Browse history events
for event in vehicle.history.list(limit=3):
print(event.date, event.title, event.description)
# Browse owner records
for owner in vehicle.owners.list(limit=3):
print(owner.date, owner.type)
# Typed error handling: attempt a lookup for a non-existent plate
try:
client.vehicles.get(regnr="ZZZ999")
except VehicleNotFound as exc:
print(f"Not found: {exc.regnr}")
print("Exercised: makes.list, models.list, vehiclesummaries.search, details, valuation, history.list, owners.list, vehicles.get")
Fetch detailed vehicle information by Swedish registration number. Returns make, model, technical specs, inspection history, owner history, and extensive technical data. The response includes dozens of fields from the registry (Swedish-language keys). Some fields (exterior, interior, motorkod, tecdoc_id) require site login and show 'Logga in' as placeholder.
| Param | Type | Description |
|---|---|---|
| regnrrequired | string | Swedish vehicle registration number (e.g. ABC001, GHF663). |
{
"type": "object",
"fields": {
"color": "string, vehicle color in Swedish",
"mileage": "string, odometer reading with unit (e.g. '20 013 mil')",
"model_year": "string, model year",
"transmission": "string, transmission type (e.g. 'Automat', 'Manuell')",
"owner_history": "array of objects with date and type",
"history_events": "array of objects with date, title, description",
"registration_number": "string, the queried plate number"
},
"sample": {
"data": {
"color": "Mörkgrå",
"mileage": "20 013 mil",
"model_year": "2014",
"transmission": "Manuell",
"owner_history": [
{
"date": "2024-05-14",
"type": "Privatperson"
}
],
"history_events": [
{
"date": "2025-09-22",
"title": "Besiktigad",
"description": "Godkändkontrollbesiktning vid 20 013 mil."
}
],
"registration_number": "GHF663"
},
"status": "success"
}
}About the Biluppgifter API
Vehicle Lookup and History
get_vehicle_by_registration accepts a Swedish registration number (e.g. GHF663) and returns technical attributes including color, power, transmission, model_year, and mileage in Swedish mil, plus owner_history (an array of dated ownership changes with type) and history_events (dated events with title and description). Note that a small set of fields — exterior, interior, motorkod, and tecdoc_id — require a biluppgifter.se account and will return 'Logga in' rather than real values. For a focused history pull without the full detail payload, get_vehicle_history returns only the chronological history_events array, covering inspections, traffic status changes, and past advertisements.
Valuation and Ownership
get_vehicle_valuation takes a regnr and an optional mileage integer (in Swedish mil, where 1 mil = 10 km). When mileage is omitted the endpoint auto-fetches it from the vehicle record. The valuation_history array contains objects with value (integer SEK), type (historic, current, or forecast), and date (YYYY-MM-DD), giving a time series suitable for plotting price trends. dealer_price_range and private_price_range may return empty strings without a site login. get_vehicle_owner_info returns owner_history with each entry typed as Privatperson, Bilhandlare, or Företag, plus an owner_summary field; individual owner names require BankID authentication and are not returned by any endpoint.
Search and Make/Model Catalog
search_vehicles_by_partial_plate accepts a plate prefix such as ABC or GHF and returns matching vehicles with registration_number, make_model, year, color, and type. The query must be a valid Swedish plate prefix — make or model name queries return an empty list. list_makes enumerates all makes in the registry with name, slug, origin (ISO country code), and volume (registered vehicle count). get_make_details takes a make_slug (e.g. volvo, bmw) and returns all associated models with their own slugs, useful for building browsable catalogs or validation lists.
The Biluppgifter API is a managed, monitored endpoint for biluppgifter.se — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when biluppgifter.se changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official biluppgifter.se API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Retrieve full technical specs and inspection history for a fleet vehicle using its registration plate
- Plot a vehicle's SEK market value over time using the
valuation_historytime series fromget_vehicle_valuation - Verify ownership type changes (private, dealer, company) before a used car purchase via
get_vehicle_owner_info - Build a registration plate autocomplete feature using
search_vehicles_by_partial_platewith plate prefix inputs - Enumerate all Swedish-registered makes and their volumes with
list_makesfor fleet analytics or market research - Populate a make/model selector for a car listing form using
list_makesandget_make_detailsslugs - Monitor a vehicle's traffic status and advertisement history chronologically using
get_vehicle_history
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does biluppgifter.se have an official developer API?+
What does `get_vehicle_valuation` return, and do I need to supply a mileage value?+
get_vehicle_valuation returns a valuation_history array of objects each containing a value in SEK, a type (historic, current, or forecast), and a date. The mileage parameter is optional — if you omit it, the endpoint fetches the vehicle's current odometer reading automatically. dealer_price_range and private_price_range may be empty strings; they require a biluppgifter.se login to populate.Are individual owner names available through `get_vehicle_owner_info`?+
owner_history entries with date and type (e.g. Privatperson, Bilhandlare, Företag) and an owner_summary count. Detailed owner identity requires BankID authentication on biluppgifter.se and is not available through any endpoint. The API covers ownership type and timing data. You can fork it on Parse and revise to attempt to surface additional public ownership metadata if biluppgifter.se exposes it without authentication.Can I search for vehicles by make or model name rather than plate prefix?+
search_vehicles_by_partial_plate only matches against the beginning of a Swedish registration plate number — make or model name queries return an empty list. list_makes and get_make_details let you enumerate makes and models. You can fork it on Parse and revise to add a dedicated make/model vehicle search endpoint if that capability becomes available.Which fields in `get_vehicle_by_registration` require a site login?+
'Logga in' instead of real data without a biluppgifter.se account: exterior, interior, motorkod, and tecdoc_id. All other fields — including color, power, mileage, transmission, model_year, owner_history, and history_events — are returned without authentication.