Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) UK Vehicle Data VRM LookupDemonstrates how to query the UK Vehicle Data VRM online API's. (See https://ukvehicledata.co.uk/)
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $rest = New-Object Chilkat.Rest # Connect using TLS. $bAutoReconnect = $true $success = $rest.Connect("uk1.ukvehicledata.co.uk",443,$true,$bAutoReconnect) if ($success -ne $true) { $($rest.LastErrorText) exit } # Replace UKVD-API-KEY with your actual API KEY, # which looks something like "abcdb1234-0abc-1235-abcf-1234c3d1abcd" $rest.Authorization = "ukvd-ipwhitelist UKVD-API-KEY" # Replace "ABCDE" with a real VRM... $rest.AddQueryParam("key_vrm","ABCDE") # Add the Content-Type HTTP request header. # success = rest.AddHeader("Content-Type","application/json; charset=UTF-8"); # This request gets vehicle data. # See below for a request to get battery data. $jsonResponseStr = $rest.FullRequestNoBody("GET","/api/datapackage/vehicledata") if ($rest.LastMethodSuccess -ne $true) { $($rest.LastErrorText) exit } if ($rest.ResponseStatusCode -ne 200) { $("Response Status Code = " + $rest.ResponseStatusCode) $($jsonResponseStr) exit } $json = New-Object Chilkat.JsonObject $json.Load($jsonResponseStr) $json.EmitCompact = $false # Show the JSON response. $($json.Emit()) # A sample vehicledata response will be as shown below. # To get a few bits of data from the response: $("RequestGuid: " + $json.StringOf("RequestGuid")) $("EngineNumber: " + $json.StringOf("DataItems.EngineNumber")) $("Vrm: " + $json.StringOf("DataKeys.Vrm")) # { # "RequestGuid": "xxxxxxxx-cc72-4b63-xxxxxxxxxxxx", # "StatusCode": 0, # "StatusMessage": "Success", # "PackageId": "xxxxxxxx-a4bc-4a84-af22-xxxxxxxxxxxx", # "PackageVersion": 1, # "DataKeys": { # "Vrm": "ABCDE" # }, # "DataItems": { # "DriveAxle": "4x2", # "Exported": "False", # "DriverSeatPosition": "RHD", # "EngineNumber": "LN910940728622", # "Class": "Sport", # "ImportedNorthernIreland": "False", # "HistoryPreviousKeeperAcquisitionDate": "2013-01-12", # "RoadFundLicenseSixMonth": "126.50", # "EnginePowerBhp": "262", # "SpecDateRangeFrom": "1987-10-01", # "RegistrationDateUK": "1994-08-03", # "SoundLevelDriveBy": "0", # "RoadFundLicenseTwelveMonth": "235.00", # "RoadFundLicenseBand": "Not available", # "Vrm": "J5YVK", # "TrimCode": "BA", # "Derivative": "S4", # "EngineSizeCc": "2174", # "EngineCylinderCount": "4", # "HistoryLatestV5cIssueDate": "2015-05-12", # "Category": "Car", # "HistoryPreviousKeeperCount": "9", # "ConditionScrapped": "False", # "EngineValveCount": "16", # "WeightUnladen": "0", # "RoadFundLicenseRenewalDate": "2017-04-01", # "Model": "Esprit", # "SpecDateRangeTo": "2003-06-01", # "RoadFundLicenseCurrentStatus": "Tax not due", # "BuildYear": "1994", # "BuildDate": "1994-12-31", # "VinLast4": "1448", # "GearCount": "5", # "SeatCount": "2", # "Make": "Lotus", # "Vin": "SCC082910RHA61448", # "ColourChangeCount": "0", # "DriveType": "Rear Wheel Drive", # "WeightGross": "0", # "EngineCode": "N/A", # "EnginePowerKw": "193", # "SoundLevelEngineSpeed": "0", # "ConditionUnscrapped": "False", # "HistoryPreviousKeeperDisposalDate": "2014-04-26", # "EngineAlignment": "Longitudinal", # "Imported": "False", # "BodyType": "Coupe", # "EnginePosition": "Mid", # "TransmissionType": "Manual", # "WeightFullyLaden": "0", # "SoundLevelStationary": "0", # "FuelType": "Petrol", # "Colour": "YELLOW", # "EngineSizeLitre": "2.2", # "RegistrationDate": "1994-08-03", # "Co2Emissions": "000", # "WeightMaxTowingUnbraked": "0", # "HistoryCurrentKeeperAcquisitionDate": "2015-04-25", # "WeightMaxTowingBraked": "0", # "DoorCount": "2", # "EngineCylinderConfig": "Inline", # "EngineFuelDelivery": "Turbo Injection" # } # } # ----------------------------------------------------------------------------------- # Now get battery data... $jsonResponseStr = $rest.FullRequestNoBody("GET","/api/datapackage/batterydata") if ($rest.LastMethodSuccess -ne $true) { $($rest.LastErrorText) exit } if ($rest.ResponseStatusCode -ne 200) { $("Response Status Code = " + $rest.ResponseStatusCode) $($jsonResponseStr) exit } $json.Load($jsonResponseStr) # Show the JSON response containing battery data. $($json.Emit()) # To get a few pieces of information out of the response... $numBatteries = $json.SizeOfArray("DataItems.BatteryList") $i = 0 while (($i -lt $numBatteries)) { $json.I = $i $("---- Battery " + $i + ":") $(" Type = " + $json.StringOf("DataItems.BatteryList[I].Type")) $(" LayoutImage = " + $json.StringOf("DataItems.BatteryList[I].LayoutImage")) $(" TerminalCode = " + $json.StringOf("DataItems.BatteryList[I].TerminalCode")) $i = $i + 1 } # The battery data looks like this: # { # "RequestGuid": "xxxxxxxx-5030-4b3d-a2ed-xxxxxxxxxxxx", # "StatusCode": 0, # "StatusMessage": "Success", # "PackageId": "xxxxxxxx-9ec2-4fd3-9247-xxxxxxxxxxxx", # "PackageVersion": 1, # "DataKeys": { # "Vrm": "ABCDE" # }, # "DataItems": { # "BatteryList": [ # { # "Type": "Primary", # "UkRef": "075", # "LayoutCode": "0", # "LayoutImage": "http://cdn.ukvehicledata.co.uk/battery/layout/0.png", # "TerminalCode": "T1", # "TerminalImage": "http://cdn.ukvehicledata.co.uk/battery/terminal/T1.png", # "HoldDownCode": "B13", # "HoldDownImage": "http://cdn.ukvehicledata.co.uk/battery/holddown/B13.png" # } # ], # "BatteryCount": "1" # } # } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.