#UAE / #Dubai Car registration API
With a population of 9 Million, and a GDP of over 400 billion, It’s the seventh wealthiest country in the world per capita, after it’s neighbour Qatar, which is the richest.
We’re hopeful that developers wishing to target the automotive industry in Dubai will want to use or new Car Registration API, which allows you to to determine the make and model of a car from its number plate, if registered in the UAE.
The website for this new API is at https://www.carregistrationapi.ae/ – which is currently in English, but we hope to offer it in Arabic shortly.
Car registration plates in the United Arab Emirates (Dubai ,Abu Dhabi, Ajman , Fujairah , Ras Al Khaimah ,Sharjah and Umm Al Quwain) use the /CheckUAE endpoint and return the following information:
- Make & Model
Sample Json:
{“Description”:”MITSUBISHI CANTER “,”CarMake”:{“CurrentTextValue”:”MITSUBISHI”},”CarModel”:{“CurrentTextValue”:”CANTER “},”MakeDescription”:{“CurrentTextValue”:”MITSUBISHI”},”ModelDescription”:{“CurrentTextValue”:”CANTER “}}
Support for other UAE Emirates, (Abu Dhabi, Sharjah, Ajman, Umm Al-Quwain, and Fujairah), and with much more vehicle data (incl. VIN), is available via a different API, but this API requires the EmiratesID of the owner of the vehicle. Please contact us for information on this API. Which is available at this endpoint:
https://www.carregistrationapi.ae/api/private/uae.asmx?op=CheckUAE
#KEKKH Hungarian Car Number plate #API
Data sourced directly from KEKKH, this API allows users look up the details of cars in Hungary using its number plate.
This is ideal for used car sales websites, insurance sites, and even helping consumers ensure that the car they are buying matches the plate.
The website is at http://www.rendszám.com/ which means “Number plate” in Hungarian.
Car registration plates in Estonia use the /CheckHungary endpoint and return the following information:
- Make & Model
- Engine Size
- Registration Year
- Engine power in KW
Sample Json:
{
“Description”:“BMW X3 2.0D X83”,
“CarMake”:{
“CurrentTextValue”:“BMW”
},
“CarModel”:{
“CurrentTextValue”:“X3 2.0D X83”
},
“MakeDescription”:{
“CurrentTextValue”:“BMW”
},
“ModelDescription”:{
“CurrentTextValue”:“X3 2.0D X83”
},
“EngineSize”:{
“CurrentTextValue”:“1995”
},
“RegistrationYear”:“2008”,
“Power”:“130”
}
#SEO boost for #IDN domains Google #Canary
In Google Canary (Version 52.0.2734.1 canary SyzyASan), which is two versions ahead of the official Google Chrome (Version 50.0.2661.102 m) , there’s been an important change in how Chome handles IDN domains.
An IDN domain one with non-latin charachters in it, like www.sõiduk.com – In Google Chrome (v50 and below), if you click on this link, then the domain appears as punycode in the address bar, like this http://www.xn--siduk-dua.com/ – which is the same domain, but translated into a format that is compatible with the DNS system. To end users though, they will no longer recognise the domain, and it looses trust and branding. – As a consumer, this looks like a phishing site now.
However, in Google Chrome Canary, which is Google’s beta version of Chrome, which gives a good preview of future versions of Google, then if you click on an IDN domain then the IDN representation still remains in the address bar, so you see the www.sõiduk.com domain there. This helps re-assure consumers that they are on the website they wanted to be on, and helps branding.
Get #PhantomJSCloud for #Free
PhantomJSCloud is a online service, where you can emulate a browser action using a REST API. Great stuff, but unfortunately they charge, and if you’re on a low budget, or you intend to scale too much, then you might be put off by the fees.
However, PhantomJS can be downloaded for free, and it can be run from a asp.net page with no extra permissions set in IIS, and you can customise it to your needs, by making your own web based PhantomJS host with a few lines of code, thanks to NReco.PhantomJS
So, step 1
Install-Package NReco.PhantomJS
Then step 2:
var strUrl = Request.QueryString[“url”];
var strArgs = Request.QueryString[“args”];
if (string.IsNullOrEmpty(strUrl) || string.IsNullOrEmpty(strArgs))
{
Response.Write(“url and args are required”);
return;
}
var wc = new WebClient();
var strJS = wc.DownloadString(strUrl);
var phantomJS = new PhantomJS();
phantomJS.OutputReceived += (a, b) =>
{
Response.Write(b.Data);
};
phantomJS.RunScript(strJS, new[] { strArgs });
#Estonian Car Registration lookup #API
![]() Estonia Car Registration API |
Today we’ve just launched our Estonian Car registration lookup API on sõiduki.com – meaning “Vehicle” in Estonian. So far, it only returns just the make and model of the car being searched, but if we get more interest in the country, then we can expand this. |
Car registration plates in Estonia use the /CheckEstonia endpoint and return the following information:
- Make & Model
Sample Json:
{“Description”:”MITSUBISHI PAJERO”,”CarMake”:{“CurrentTextValue”:”MITSUBISHI”},”CarModel”:{“CurrentTextValue”:”PAJERO”},”MakeDescription”:{“CurrentTextValue”:”MITSUBISHI”},”ModelDescription”:{“CurrentTextValue”:”PAJERO”}}
API to access #UK #Electoral roll
T
he UK electoral roll is a database of millions of UK citizens, which comprises the name, address and phone number of every person registered to vote in the UK.
This API, at http://www.electoralrollapi.com integrates with data held by the UK government, and can be used for purposes such as direct mail marketing, debtor searches, and demographic data.
Access to the API costs as little as 1p per request, and you can get a free account with 10 requests free, by emailing info@electoralrollapi.com
The API is an XML / SOAP based web service, that integrates easily into C#, ASP.NET, PHP and Java applications.
Car registration lookup #API in #SouthAfrica

Now on our sixteenth country, and our first African nation, we now support car registration lookups via our API in South Africa at http://za.carregistrationapi.com/
Car registration plates in South Africa use the /CheckSouthAfrica endpoint and return the following information:
- Make, Model & Variant
- Registration date
- Engine Number
- HPI asset number
- Introduction date
- Mead & McGrouther code
- Number of Axles
- Engine CC
- Engine Cylinders
- Number of Doors
- Gross Combination Mass
- Gross Vehicle Mass
- Engine Power in Kilowatts
- Tare
- Tyre size (Front & Rear)
- Wheel base
- Vehicle identification number
Sample Json:
{“Description”:”TOYOTA CONDOR”,”RegistrationYear”:”2005″,”CarMake”:{“CurrentTextValue”:”TOYOTA”},”CarModel”:{“CurrentTextValue”:”CONDOR”},”MakeDescription”:{“CurrentTextValue”:”CONDOR”},”ModelDescription”:{“CurrentTextValue”:”CONDOR”},”Extended”:{“DiscDate”:”\/Date(1125525600000)\/”,”EngineNo”:”2RZ3256364″,”HpiAssetNo”:38571175,”IntroDate”:”\/Date(1057010400000)\/”,”MMCode”:”60051365″,”Make”:”TOYOTA”,”Model”:”CONDOR”,”RegNo”:”NU44128″,”Specs”:[{“Code”:”1″,”Name”:”Axle”,”Value”:”4X2″},{“Code”:”2″,”Name”:”Body Type”,”Value”:”MPV”},{“Code”:”4″,”Name”:”CC”,”Value”:”2438″},{“Code”:”35″,”Name”:”Cyl”,”Value”:”4″},{“Code”:”7″,”Name”:”Doors”,”Value”:”5″},{“Code”:”11″,”Name”:”GCM”,”Value”:”3305″},{“Code”:”14″,”Name”:”GVM”,”Value”:”2030″},{“Code”:”16″,”Name”:”kW”,”Value”:”85″},{“Code”:”15″,”Name”:”Tare”,”Value”:”1462″},{“Code”:”9″,”Name”:”Tyre Size (Front)”,”Value”:”195/70 R14″},{“Code”:”48″,”Name”:”Tyre Size (Rear)”,”Value”:”195/70 R14″},{“Code”:”13″,”Name”:”Use”,”Value”:”GEN”},{“Code”:”85″,”Name”:”Wheel base”,”Value”:”2650″}],”Type”:”Auto”,”TypeCode”:”A”,”VIN”:”AHT12UF8000010135″,”Variant”:”CONDOR 2400i ESTATE TX (2003 – 2005)”}}
Data is also returned in XML format.
#WordPress on #WebPlatformInstaller fails on #azure with error 500
![]()
I wanted to install wordpress on a new azure webserver, that hadn’t been used for much before hand, I tried the Web Platform Installer, typed WordPress, and the installation seemed to go well, installing PHP, MySQL etc., but then it failed at the very last step with a 500 error message when I tried to load the domain.
There was no more detail to the error message, and I could see that IIS seemed to be set up correctly with a FastCGI module handler for *.php pointing to php-cgi.exe.
I then tried to run php from the command line, by navigating to C:\Program Files (x86)\PHP\v5.5 and typing php, and I got an error message saying that MSCVR110.dll missing from computer.
I then went to download it from Microsoft here:
https://www.microsoft.com/en-gb/download/details.aspx?id=30679
Installing both the 64 and x86 versions, just to be sure, and it worked, without even a reboot or iisreset.
Companies house UK opens up #API as #Beta
https://itunes.apple.com/gb/app/company-check/id866565534?mt=8

Our Company Check App, version 1.8 for iOS just got a cool new feature (which is currently pending app store review), you can now click on a companies’ filings, and get PDF downloads for documents that they have filed with the Companies House in the UK. These include Annual returns, shareholder agreements, and so forth.
This was thanks to the Companies’ house opening up their document API as a beta. Which is a REST based JSON service. You need to register with them, provide some fixed IPs, and you get an authentication token back. This is passed bia basic authentication over HTTPS to their service.
I used c# to integrate with them, using the following code:
Response.ContentType = strMime;
var wc = new WebClient();
const string un = “**Token goes here***”;
var credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes(un + “:”));
wc.Headers[HttpRequestHeader.Authorization] = “Basic ” + credentials;
var bData = wc.DownloadData(strUrl);
Response.BinaryWrite(bData);
When the mime type is set to application/pdf, then the page will display a PDF, relayed from the Companies House.
Google #BigQuery GoogleCredential json file based authentication

Google’s big query is a very cost effective means of storing structured data, and it has c# support. Following the quick start example, I didn’t like the way it required the use of the GOOGLE_APPLICATION_CREDENTIALS environment variable to connect to the service. That would be a deployment headache.
So, after downloading the JSON credentials file, which looked like this:
{
“type”: “service_account”,
“project_id”: “xxxxx”,
“private_key_id”: “xxxx”,
“private_key”: “—–BEGIN PRIVATE KEY—– xxx —–END PRIVATE KEY—–\n”,
“client_email”: “xxxxx.gserviceaccount.com”,
“client_id”: “xxxxxxx”,
“auth_uri”: “https://accounts.google.com/o/oauth2/auth”,
“token_uri”: “https://accounts.google.com/o/oauth2/token”,
“auth_provider_x509_cert_url”: “https://www.googleapis.com/oauth2/v1/certs”,
“client_x509_cert_url”: “https://www.googleapis.com/robot/v1/metadata/x509/xxxxxx%40developer.gserviceaccount.com”
}
I then modified the code in CreateAuthorizedClient as follows:
var fs = new FileStream(@”C:\..your-credentials.json”,FileMode.Open);
GoogleCredential credential = GoogleCredential.FromStream(fs);
Which worked a charm. I then had to import my own data into bigQuery, and see if I could query it, and that worked fine too – although I had to enable billing on the account *and project* before I could add my own data.
