RDW Open Data API integration
A customer enters their licence plate and the rest is already filled in: make, model, fuel, MOT date. That saves typing and typos, in a quote form, a workshop schedule or a lease application. The RDW, the Dutch vehicle authority, publishes that data for free as open data.
- Basic data per licence plate goes back and forth with Your other systems
- MOT expiry date goes back and forth with Your other systems
- Fuel, consumption and emissions goes back and forth with Your other systems
- Weights and dimensions goes back and forth with Your other systems
Built for clients including Tata Steel, M&G Investments, Digistore24, Toppers in Concert, Bar-le-Duc and Loogman
This is the data organisations most often let flow between systems. Which of it matters to you depends on where work is getting stuck today.
Basic data per licence plate
Vehicle type, make, model name, colour, number of seats, date of first admission and date of registration. The registered vehicles dataset is the starting point: every row is one licence plate.
MOT expiry date
The expiry date of the APK, the Dutch MOT, is in the dataset for every licence plate. Your workshop or customer system can use it to send a reminder in time.
Fuel, consumption and emissions
In a separate dataset, also per licence plate: fuel, consumption, CO2 emissions, emission class and, for electric vehicles, the WLTP range.
Weights and dimensions
Kerb weight, maximum permitted mass, braked and unbraked towing weight, length and width. Axles and body type have their own datasets, also linked by licence plate.
Value and status
List price, gross BPM (Dutch registration tax), whether the vehicle has third-party insurance, whether there is an open recall and whether it has been exported. There is also an assessment of the odometer reading.
Not always. If an existing integration for RDW Open Data does exactly what you need, we'll tell you.
There is no RDW switch you turn on in your CRM or accounting software. If you use an industry package for workshops, leasing or insurance, first ask whether it has a licence plate lookup, which source it uses and how current the data is.
If you only look up a licence plate now and then, you can do that in the RDW's own portal. An integration pays off when licence plates come up in a form, a schedule or an acceptance process, and the data needs to be there straight away. We can connect RDW Open Data to any system.
- A customer enters their licence plate in your quote or application form, and the vehicle data has to go straight to your CRM.
- You combine several datasets, such as basic data, fuel and axles, into one vehicle profile.
- You want to remind customers about their MOT automatically, based on the expiry date per licence plate.
- You want to update a fleet or stock periodically, for example for recalls or insurance status.
One API per dataset
The RDW publishes its datasets on opendata.rdw.nl. Each dataset has its own API address, and you filter in the URL, for example by licence plate. The response is JSON. In the dataset, licence plates are stored without hyphens, in capitals.
Free, under CC0
The open data is available to every user free of charge and without restrictions, under the Creative Commons 0 licence. No agreement or paid connection is needed.
App token and limits
The portal runs on the Socrata platform. Without an app token, you share a limit with other requests from the same IP address; a free app token gives you your own, higher limit. Too many requests return HTTP 429. The RDW itself says performance is on a fair-use basis.
Paging through large sets
A request returns 1,000 rows by default. If you need a large part of a dataset, page through it with limit and offset. For a single licence plate it doesn't matter.
No guarantee of currency
The RDW gives no guarantee of availability, currency or continuity of the datasets and the platform, and may stop a dataset. Design your process so it keeps going when the API briefly doesn't respond.
An integration moves data. In between, AI can read, sort and prepare a suggestion. Where it matters, a person decides.
Licence plate from a document or photo
A licence plate is in an email, a claim form or on a photo. AI reads it, and the integration checks it against the RDW data. If the make and model don't match what the customer wrote, an employee takes a look.
Explaining technical data
Weights, towing capacity and emission class mean little to most customers. An assistant can explain what they mean, for example for towing a trailer. A decision with consequences, such as an acceptance or a price, stays with a person.
No data about the owner
The open data only contains information that isn't sensitive in terms of privacy, fraud or competition. Who owns the vehicle isn't in it, only the date of registration. Nor can you see whether a vehicle is registered as stolen or missing.
Dates stored as text
Dates are stored in the dataset as text in the form yyyymmdd, with a separate date column alongside. If you calculate or sort with the text column, you get odd results. Choose deliberately which column you use.
Attribution and branding
According to the RDW's terms of use, when reusing the data you may not state that it comes from the RDW, and you may not use the RDW's logo or house style in your application. Take that into account in your design.
Storing everything or fetching every time
Your own copy of the data goes stale, and fetching it every time relies on a platform with no availability guarantee. Store what you need per licence plate, with the date you fetched it, and refresh when it matters.
What goes where
Which data moves, in which direction, and which system wins when two values differ. That is written down before anything gets built. For this integration, that means: Basic data per licence plate, MOT expiry date, Fuel, consumption and emissions, Weights and dimensions, Value and status.
Fields and rules
For every field, how it translates between the systems: statuses, VAT codes, general ledger accounts, item numbers. And what happens with a duplicate or a missing value. For this integration, that means: One API per dataset, Free, under CC0, App token and limits, Paging through large sets, No guarantee of currency.
Testing with real cases
In a sandbox or test administration, with the exceptions you actually run into: credit notes, partial deliveries, changed customer details.
Live, with logging and monitoring
Every sync is logged, and when something fails, someone gets an alert. If a vendor changes its API, we update the integration.

No account manager. You talk to someone who builds integrations themselves, and who will tell you when a standard integration is enough.
- Office on the Duivendrechtsekade in Amsterdam
- ISO 9001 and ISO 27001, certified by Kiwa
- 500 projects delivered
- 4.8 from 127 reviews
Does the RDW have an API?
Yes. The RDW publishes open data on opendata.rdw.nl, and each dataset can be queried through an API, for example by licence plate. The response is JSON.
Is the RDW API free?
Yes. The RDW charges nothing for open data through this channel, and the datasets fall under Creative Commons 0. A free app token gives you your own, higher limit than requests without a token.
Which vehicle data can I get from a licence plate?
Among other things: make, model name, vehicle type, colour, date of first admission, MOT expiry date, list price and weights, and whether there is an open recall. Fuel, consumption and emissions are in a separate dataset that you also query by licence plate.
Can I see who owns a car through the RDW API?
Not through open data. It only contains information that isn't sensitive in terms of privacy, fraud or competition. The date of registration is in it, the owner's name isn't.
How current is the RDW data?
The RDW gives no guarantee of currency or availability of the datasets. So record for each vehicle when you fetched the data, and fetch it again before you base a decision on it.
Sources
The technical facts on this page come from the vendors' official documentation, checked on 19 September 2026. Vendors change their APIs and limits; when we build an integration, we always check the current state.

