Sample code for 30+ languages & platforms
JavaScript

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.
Note
This example is intended for running within a Chilkat.Js embedded JavaScript engine. All Chilkat JavaScript examples require Chilkat v11.4.0 or greater.
JavaScript
var success = false;

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

var http = new 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"
// }

var json = new CkJsonObject();
json.UpdateString("registrationNumber","ABC1234");

http.SetRequestHeader("Accept","application/json");
http.SetRequestHeader("x-api-key","supplied API key");

var resp = new CkHttpResponse();
success = http.HttpJson("POST","https://driver-vehicle-licensing.api.gov.uk/vehicle-enquiry/v1/vehicles",json,"application/json",resp);
if (success == false) {
    console.log(http.LastErrorText);
    return;
}

var sbResponseBody = new CkStringBuilder();
resp.GetBodySb(sbResponseBody);
var jResp = new CkJsonObject();
jResp.LoadSb(sbResponseBody);
jResp.EmitCompact = false;

console.log("Response Body:");
console.log(jResp.Emit());

var respStatusCode = resp.StatusCode;
console.log("Response Status Code = " + respStatusCode);
if (respStatusCode >= 400) {
    console.log("Response Header:");
    console.log(resp.Header);
    console.log("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

var artEndDate = jResp.StringOf("artEndDate");
var co2Emissions = jResp.IntOf("co2Emissions");
var colour = jResp.StringOf("colour");
var engineCapacity = jResp.IntOf("engineCapacity");
var fuelType = jResp.StringOf("fuelType");
var make = jResp.StringOf("make");
var markedForExport = jResp.BoolOf("markedForExport");
var monthOfFirstRegistration = jResp.StringOf("monthOfFirstRegistration");
var motStatus = jResp.StringOf("motStatus");
var registrationNumber = jResp.StringOf("registrationNumber");
var revenueWeight = jResp.IntOf("revenueWeight");
var taxDueDate = jResp.StringOf("taxDueDate");
var taxStatus = jResp.StringOf("taxStatus");
var typeApproval = jResp.StringOf("typeApproval");
var wheelplan = jResp.StringOf("wheelplan");
var yearOfManufacture = jResp.IntOf("yearOfManufacture");
var euroStatus = jResp.StringOf("euroStatus");
var realDrivingEmissions = jResp.StringOf("realDrivingEmissions");
var dateOfLastV5CIssued = jResp.StringOf("dateOfLastV5CIssued");