HLR verification service performs a direct lookup on the Home Location Register against any GSM mobile number. Get information such as the original network the mobile number was assigned, information about portability and current mobile network of the number. Additionally see if the the mobile has been turned on and connected to its network recently and the country where the mobile was last used (if available).
Receive real time validity information about a mobile number like the current Mobile Network, number type (mobile, landline, virtual), portability information, Mobile Network Code for any phone number.
Use our HLR and MNP service through our reliable HTTP API
curl --location 'https://hlr.sms.to/api/v2/lookup' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <api_key>' \ --data '{ "number": "+447704571048", "default_prefix": "GB" }'
<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://hlr.sms.to/api/v2/lookup', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS =>'{ "number": "+447704571048", "default_prefix": "GB" }', CURLOPT_HTTPHEADER => array( 'Accept: application/json', 'Content-Type: application/json', 'Authorization: Bearer <api_key>' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
var https = require('follow-redirects').https; var fs = require('fs'); var options = { 'method': 'POST', 'hostname': 'hlr.sms.to', 'path': '/api/v2/lookup', 'headers': { 'Accept': 'application/json', 'Content-Type': 'application/json', 'Authorization': 'Bearer <api_key>' }, 'maxRedirects': 20 }; var req = https.request(options, function (res) { var chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function (chunk) { var body = Buffer.concat(chunks); console.log(body.toString()); }); res.on("error", function (error) { console.error(error); }); }); var postData = JSON.stringify({ "number": "+447704571048", "default_prefix": "GB" }); req.write(postData); req.end();
require "uri" require "json" require "net/http" url = URI("https://hlr.sms.to/api/v2/lookup") https = Net::HTTP.new(url.host, url.port) https.use_ssl = true request = Net::HTTP::Post.new(url) request["Accept"] = "application/json" request["Content-Type"] = "application/json" request["Authorization"] = "Bearer <api_key>" request.body = JSON.dump({ "number": "+447704571048", "default_prefix": "GB" }) response = https.request(request) puts response.read_body
import http.client import json conn = http.client.HTTPSConnection("hlr.sms.to") payload = json.dumps({ "number": "+447704571048", "default_prefix": "GB" }) headers = { 'Accept': 'application/json', 'Content-Type': 'application/json', 'Authorization': 'Bearer <api_key>' } conn.request("POST", "/api/v2/lookup", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\n \"number\": \"+447704571048\",\n \"default_prefix\": \"GB\"\n}"); Request request = new Request.Builder() .url("https://hlr.sms.to/api/v2/lookup") .method("POST", body) .addHeader("Accept", "application/json") .addHeader("Content-Type", "application/json") .addHeader("Authorization", "Bearer <api_key>") .build(); Response response = client.newCall(request).execute();
package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://hlr.sms.to/api/v2/lookup" method := "POST" payload := strings.NewReader(`{ "number": "+447704571048", "default_prefix": "GB" }`) client := &http.Client { } req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) return } req.Header.Add("Accept", "application/json") req.Header.Add("Content-Type", "application/json") req.Header.Add("Authorization", "Bearer <api_key>") res, err := client.Do(req) if err != nil { fmt.Println(err) return } defer res.Body.Close() body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) return } fmt.Println(string(body)) }