Our data validation API was first introduced over a decade ago, when the Internet was a different place. We’ve taken a great deal of effort to ensure backwards compatibility with every change, addition and improvement we’ve made over the intervening time, but we finally need to make one breaking change: removing our HTTP endpoint and ensuring everyone is using HTTPS.
Thankfully most of our users are already using HTTPS, and we started the process of working with those who were still using HTTP some months ago to help with the transition.
If you are still using HTTP you will be contacted shortly to ensure you are aware and provide any assistance required in ensuring that your API requests are moved over to our HTTPS endpoint.
How do I move to HTTPS?
The details will vary depending on how your integration is built.
If you are using one of our ready-made integrations, e.g. for Microsoft Dynamics, Salesforce, Magento, WordPress etc., please contact us for details of upgrading to the latest version that uses HTTPS.
If you have written your own code to call our API, that code will need to be updated. In most cases this should be as simple as changing http:// to https:// in the URL to the API. There are examples for most scenarios below, but please get in touch if you need any help.
Why not just redirect requests to HTTP?
We want to stop any sensitive data being transmitted to us insecurely. If we were to use an automatic redirection mechanism, the initial request containing potentially sensitive data would still have been sent in order for us to generate the redirection response.
Instead we will be disabling the HTTP endpoint entirely, so any clients still trying to connect to it will get a timeout error before any information can be sent.
Examples
Some simple before-and-after examples for common scenarios:
PHP
Change the URL used by the SoapClient
constructor to use HTTPS:
$params = array(
"username" => "your-username",
"password" => "your-password",
"telephoneNumber" => $telephoneNumber,
"defaultCountry" => $defaultCountry,
"options" => $options
);
$client = new SoapClient("http://webservices.data-8.co.uk/InternationalTelephoneValidation.asmx?WSDL");
$result = $client->IsValid($params);
$params = array(
"username" => "your-username",
"password" => "your-password",
"telephoneNumber" => $telephoneNumber,
"defaultCountry" => $defaultCountry,
"options" => $options
);
$client = new SoapClient("https://webservices.data-8.co.uk/InternationalTelephoneValidation.asmx?WSDL");
$result = $client->IsValid($params);