Dart
Dart
DVLA Vehicle Enquiry Service
See more _Miscellaneous_ Examples
Demonstrates how to make a call to the DVLA Vehicle Enquiry API to get vehicle details of a specified vehicle. It uses the vehicle registration number as input to search and provide details of the vehicle.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final http = CkHttp();
// Implements the following CURL command:
// curl -X POST https://driver-vehicle-licensing.api.gov.uk/vehicle-enquiry/v1/vehicles \
// -H "x-api-key: supplied API key" \
// -H "Accept: application/json" \
// -d '{"registrationNumber": "ABC1234"}'
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
// Use this online tool to generate code from sample JSON:
// Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "registrationNumber": "ABC1234"
// }
final json = CkJsonObject();
json.updateString('registrationNumber', 'ABC1234');
http.setRequestHeader('Accept', 'application/json');
http.setRequestHeader('x-api-key', 'supplied API key');
final resp = CkHttpResponse();
try {
http.httpJson('POST', 'https://driver-vehicle-licensing.api.gov.uk/vehicle-enquiry/v1/vehicles', json, 'application/json', resp);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final sbResponseBody = CkStringBuilder();
resp.getBodySb(sbResponseBody);
final jResp = CkJsonObject();
jResp.loadSb(sbResponseBody);
jResp.emitCompact = false;
print('Response Body:');
print(jResp.emit());
final respStatusCode = resp.statusCode;
print('Response Status Code = $respStatusCode');
if (respStatusCode >= 400) {
print('Response Header:');
print(resp.header);
print('Failed.');
return;
}
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "artEndDate": "2025-02-28",
// "co2Emissions": 135,
// "colour": "BLUE",
// "engineCapacity": 2494,
// "fuelType": "PETROL",
// "make": "ROVER",
// "markedForExport": false,
// "monthOfFirstRegistration": "2004-12",
// "motStatus": "No details held by DVLA",
// "registrationNumber": "ABC1234",
// "revenueWeight": 1640,
// "taxDueDate": "2007-01-01",
// "taxStatus": "Untaxed",
// "typeApproval": "N1",
// "wheelplan": "NON STANDARD",
// "yearOfManufacture": 2004,
// "euroStatus": "EURO 6 AD",
// "realDrivingEmissions": "1",
// "dateOfLastV5CIssued": "2016-12-25"
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
final artEndDate = jResp.stringOf('artEndDate');
final co2Emissions = jResp.intOf('co2Emissions');
final colour = jResp.stringOf('colour');
final engineCapacity = jResp.intOf('engineCapacity');
final fuelType = jResp.stringOf('fuelType');
final make = jResp.stringOf('make');
final monthOfFirstRegistration = jResp.stringOf('monthOfFirstRegistration');
final motStatus = jResp.stringOf('motStatus');
final registrationNumber = jResp.stringOf('registrationNumber');
final revenueWeight = jResp.intOf('revenueWeight');
final taxDueDate = jResp.stringOf('taxDueDate');
final taxStatus = jResp.stringOf('taxStatus');
final typeApproval = jResp.stringOf('typeApproval');
final wheelplan = jResp.stringOf('wheelplan');
final yearOfManufacture = jResp.intOf('yearOfManufacture');
final euroStatus = jResp.stringOf('euroStatus');
final realDrivingEmissions = jResp.stringOf('realDrivingEmissions');
final dateOfLastV5CIssued = jResp.stringOf('dateOfLastV5CIssued');
}