PHP Extension
PHP Extension
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 PHP Extension Downloads
<?php
include("chilkat.php");
$success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
$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"
// }
$json = new CkJsonObject();
$json->UpdateString('registrationNumber','ABC1234');
$http->SetRequestHeader('Accept','application/json');
$http->SetRequestHeader('x-api-key','supplied API key');
$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) {
print $http->lastErrorText() . "\n";
exit;
}
$sbResponseBody = new CkStringBuilder();
$resp->GetBodySb($sbResponseBody);
$jResp = new CkJsonObject();
$jResp->LoadSb($sbResponseBody);
$jResp->put_EmitCompact(false);
print 'Response Body:' . "\n";
print $jResp->emit() . "\n";
$respStatusCode = $resp->get_StatusCode();
print 'Response Status Code = ' . $respStatusCode . "\n";
if ($respStatusCode >= 400) {
print 'Response Header:' . "\n";
print $resp->header() . "\n";
print 'Failed.' . "\n";
exit;
}
// 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
$artEndDate = $jResp->stringOf('artEndDate');
$co2Emissions = $jResp->IntOf('co2Emissions');
$colour = $jResp->stringOf('colour');
$engineCapacity = $jResp->IntOf('engineCapacity');
$fuelType = $jResp->stringOf('fuelType');
$make = $jResp->stringOf('make');
$markedForExport = $jResp->BoolOf('markedForExport');
$monthOfFirstRegistration = $jResp->stringOf('monthOfFirstRegistration');
$motStatus = $jResp->stringOf('motStatus');
$registrationNumber = $jResp->stringOf('registrationNumber');
$revenueWeight = $jResp->IntOf('revenueWeight');
$taxDueDate = $jResp->stringOf('taxDueDate');
$taxStatus = $jResp->stringOf('taxStatus');
$typeApproval = $jResp->stringOf('typeApproval');
$wheelplan = $jResp->stringOf('wheelplan');
$yearOfManufacture = $jResp->IntOf('yearOfManufacture');
$euroStatus = $jResp->stringOf('euroStatus');
$realDrivingEmissions = $jResp->stringOf('realDrivingEmissions');
$dateOfLastV5CIssued = $jResp->stringOf('dateOfLastV5CIssued');
?>