The DVLA API and the DVSA MOT API are frequently mentioned together, often confused, and sometimes used interchangeably in conversation — but they come from different government agencies, return completely different data, and serve different purposes. For most serious vehicle data integrations, you need both. This post explains exactly what each provides, where they overlap, and how to decide what your platform actually requires.
Different agencies, different data
The DVLA (Driver and Vehicle Licensing Agency) is responsible for vehicle registration and licensing in the UK. The DVSA (Driver and Vehicle Standards Agency) is responsible for vehicle testing — MOT tests, driving tests, and vehicle standards. They operate independently and hold different data about the same vehicles.
When someone registers a vehicle in the UK, that registration goes to the DVLA. When the vehicle has an MOT test, that test record goes to the DVSA. The two datasets are linked by registration number but held separately, maintained independently, and accessed through different APIs with different authentication requirements.
What the DVLA Vehicle Enquiry API returns
The DVLA VES API returns the vehicle’s current registration record — what the vehicle is and its current licensing status. For any UK registration number, it returns make, model, colour, fuel type, engine size, year of manufacture, date of first registration, CO2 emissions, Eurostandard category, current tax status (taxed, SORN, untaxed), tax due date, MOT status (valid or expired), and MOT expiry date.
Note that the DVLA VES includes the current MOT expiry date — but not the test history. It tells you when the current MOT expires. It does not tell you about previous tests, mileage at each test, failure reasons or advisories. For that, you need the DVSA API.
Authentication: API key. Simple header on each request. Free to register, straightforward approval process.
Best for: vehicle identification, auto-populating forms, checking current tax and MOT status, fleet compliance monitoring of current status.
What the DVSA MOT History API returns
The DVSA MOT API returns the complete MOT test history for a vehicle — every test on record. For each test it returns: pass or fail result, test date, mileage recorded at test, failure reasons (for failed tests), advisory notices, test station, and test number. The response also includes the current MOT expiry date and basic vehicle details (make, model, colour, fuel type).
The DVSA API returns history going back to 2005 for cars, motorcycles and vans, and to 2018 for HGVs and buses. Test history before 2005 exists on paper records but is not in the digital database.
Authentication: OAuth 2.0 via Microsoft Azure. More complex — client ID, client secret and tenant ID used to get a Bearer token, which combined with a separate API key header on every request. Tokens valid for 60 minutes and must be cached and refreshed. Client secrets expire every two years.
Best for: used car platforms showing full MOT history, mileage verification, advisory history, fleet maintenance tracking, part-exchange valuation tools that flag mileage discrepancies.
Where they overlap
Both APIs return the current MOT expiry date and basic vehicle details (make, model, fuel type). If you only need to know whether a vehicle has a current MOT, either API gives you that. If you need the full test history, you need DVSA. If you need tax status and SORN information, you need DVLA — the DVSA API doesn’t include tax data.
Which one does your platform need?
DVLA only — your use case is vehicle identification and current status. You want to auto-populate a form when a customer enters their registration, or check whether a fleet vehicle is currently taxed and has a valid MOT. You don’t need historical test data. DVLA VES is free, straightforward to authenticate, and does exactly this. No reason to use DVSA if history isn’t needed.
DVSA only — your use case is MOT history specifically. You’re building a used car listing tool where buyers want to see the full test record, or a fleet maintenance system that tracks mileage history and recurring advisories. You don’t need current tax status or the vehicle’s registration details beyond what the DVSA response already returns (which includes basic vehicle data). Note that DVSA doesn’t return tax status — if you need that too, you’ll need DVLA alongside.
Both — your use case needs the complete vehicle picture. A used car dealer platform that wants to show buyers everything: what the vehicle is (DVLA), whether it’s currently taxed (DVLA), the full MOT history with mileage (DVSA), and advisories from previous tests (DVSA). A fleet management system monitoring both current compliance status (DVLA) and maintenance history (DVSA). A part-exchange tool that auto-populates vehicle details (DVLA) and surfaces mileage discrepancies across MOT history (DVSA). For all of these, a custom integration calls both APIs and combines the responses into a single data layer.
Authentication complexity comparison
DVLA is simpler. API key in a header. Done. The registration process is straightforward, approval is usually quick, and the authentication on each request is a single header.
DVSA is more involved. OAuth 2.0 via Microsoft Azure means acquiring a Bearer token before each period of API access, caching it for 60 minutes, refreshing automatically when it expires, and also passing the API key. Client secrets expire every two years and need rotating. A properly built DVSA integration handles all of this transparently — but it is more work to build correctly than the DVLA integration.
If you need both APIs, the additional authentication complexity of DVSA is part of the combined build scope, not a reason to avoid it. The data it provides is worth the implementation cost for use cases that need it.
Cost comparison
Both APIs are free to use. No per-lookup charges on either. The cost is purely the development work — building the integration, handling authentication, parsing responses, connecting to your platform and handling edge cases correctly.
A DVLA-only integration is simpler and faster to build — typically 3–5 days for a standard lookup and display integration. A DVSA-only integration involves the OAuth complexity — typically one week. A combined DVLA and DVSA integration is more efficient than building them separately — typically one to one-and-a-half weeks for both, because the infrastructure (proxy, error handling, caching layer) is shared.
For DVLA integration pricing, see the DVLA API integration cost guide. For DVSA MOT API pricing, see the DVSA MOT API integration cost guide. For the full DVLA service, see the DVLA API integration service. For the full DVSA service, see the DVSA MOT API integration service.
Related posts
- DVLA Vehicle Enquiry API: a complete guide
- DVLA Vehicle Enquiry API integration cost
- DVLA API integration for used car dealer websites
- What does the DVSA MOT History API return?
Practical example: building a used car listing platform
A used car dealer website that wants to display comprehensive vehicle information on every listing illustrates the two APIs working together clearly.
When a vehicle is added to inventory, the integration triggers two API calls using the registration number. The DVLA VES call returns make, model, colour, fuel type, engine size, year of manufacture, CO2 emissions and current tax and MOT status. The DVSA MOT call returns the full test history — every MOT test on record with mileage, results, failure reasons and advisories.
The combined data layer powers the listing page. Vehicle details (make, model, engine, fuel) auto-populate from DVLA. The tax status badge shows whether it’s currently taxed. The MOT expiry date shows when the next test is due. The full MOT history section shows the complete test record — buyers can see mileage at every test, whether the vehicle has ever failed, and what advisories have been noted. All of this comes from two free government APIs and is updated from source rather than from a manually maintained data entry.
The buyer gets transparency. The dealer gets trust signals without manual data entry. The integration calls both APIs once when the vehicle is added to inventory and caches the response, refreshing periodically to keep the tax and MOT status current as they change.
Practical example: fleet compliance monitoring
A fleet management system monitoring both current compliance and maintenance history is another case where both APIs are needed.
For current compliance, DVLA gives you tax status and MOT validity for every vehicle in the fleet — the data you need to confirm each vehicle is legally road-usable today. A daily automated check across the fleet flags any vehicle where tax has expired, MOT has lapsed, or SORN has been declared. This is the compliance layer.
For maintenance tracking, DVSA gives you the MOT history across the fleet — mileage at each test, recurring advisories that suggest a systemic maintenance issue with a specific vehicle, failure patterns that might indicate a manufacturer defect. This is the maintenance intelligence layer.
Neither API alone gives you the complete picture. DVLA tells you whether each vehicle is compliant right now. DVSA tells you the history that explains why a vehicle might be developing problems. Together they give a fleet manager both the compliance dashboard and the maintenance insight in one system.
If you need help with a custom API integration for your website or business application, I can help. I build bespoke API integrations for UK businesses. See API integration pricing or get in touch to discuss your project.
Need a custom integration built?
I build custom API integrations — Stripe, Companies House and bespoke data pipelines. Reliable, well-documented, no agency overhead.
Discuss your project →
