 
        It's very easy to use. This app is bug free and easy to handle software, I have so far gotten legit results. It filters out fake number and makes life easy. ―Arpita B.
Mobile & Landline
Stop wasting time on invalid, disconnected numbers - connect with real people.
Check phone numbers in real-time - prevent fraud and make sure only valid phone numbers are accepted.
 
    Integrate our Phone Number Validation & Verification API directly into your website or CRM/ERP and improve your contact data quality instantly - only valid, reachable phone numbers will be accepted. To ensure full compliance with the FCC Telephone Consumer Protection Act (TCPA), the API also detects the correct line type (landline, mobile or VoIP).
Phone-Validator checks numbers to see if they are valid and active/connected. The service uses live network queries along with a large set of internal and external data sources to ensure maximum accuracy.
Phone number verification can be done in real-time in order to check the customer's details before they become a part of your user database. This can save online businesses a substantial amount of time and money.
We guarantee an availability of 99.9%. API requests will typically be answered within 750ms - please see the API server status page for real-time availability information.
You can test our Phone-Validator service with a free trial - just register for a free API key.
 
  Every moment spent on manual tasks is a missed opportunity for growth and more customer engagement.
That's why we offer 100 free phone validations - experience the speed and accuracy of real-time, fully automated phone validation.
You need a Byteplant account to test our services.
Please log in or register for
  a free trial.
 
        It's very easy to use. This app is bug free and easy to handle software, I have so far gotten legit results. It filters out fake number and makes life easy. ―Arpita B.
 
        We get a ton of really large lists and most of the times the info isn't always accurate, this service makes it easy and helps us save tons of time not reaching out to bad numbers. ―Mathew L.
 
        Great phone number validation tool. We have been validating the phone numbers manually. This automated tool allows us to scale our processes and save resources. ―Nicoleta Alexandra S.
Easy Integration and minimum manual efforts for data verification. ―Sonika T.
 
        Easy to use, speedy and friendly customer support ―Darrell B.
 
     
    | API URL | https://api.phone-validator.net/api/v2/verify | 
| Method | GET or POST | 
| Example API request (GET) | |
| More... | |
The Bulk API allows you to upload up to 100K phone numbers for validation with a single API request.
| API URL | https://api.phone-validator.net/api/v2/bulk-verify | 
| Method | POST | 
| Example API request | |
| Request Body | list of phone numbers to validate in CSV format | 
| More... | |
When the validation task is finished, we send you an email and (if requested) a HTTP GET request to the NotifyURL (with a 'taskid' parameter in the URL).
    <script type="text/javascript" src="path/to/jquery"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        ...
        // send API request
        PhoneNumber = encodeURIComponent('+49 9874 322466');
        CountryCode = 'us';
        Locale = 'en-US';
        $.ajax({
            url: 'https://api.phone-validator.net/api/v2/verify',
            type: 'POST',
            data: { PhoneNumber: PhoneNumber, CountryCode: CountryCode,
                    Locale: Locale, APIKey: 'your API key'},
            dataType: 'json',
            success: function (json) {
                // check API result
                if (typeof(json.status) != "undefined") {
                    statuscode = json.status;
                    switch (statuscode) {
                        case "VALID_CONFIRMED":
                        case "VALID_UNCONFIRMED":
                            linetype = json.linetype;
                            location = json.location;
                            countrycode = json.countrycode;
                            formatnational = json.formatnational;
                            formatinternational = json.formatinternational;
                            mcc = json.mcc;
                            mnc = json.mnc;
                            break;
                        case "INVALID": break;
                        default:
                    }
                }
            }
        });
        ...
    });
    </script>
              
    ...
    // build API request
    $APIUrl = 'https://api.phone-validator.net/api/v2/verify';
    $PhoneNumber = "+49 9874 322466";
    $CountryCode = "us";
    $Locale = "en-US";
    $Params = array('PhoneNumber' => $PhoneNumber,
                    'CountryCode' => $CountryCode,
                    'Locale' => $Locale,
                    'APIKey' => 'your API key');
    $Request = http_build_query($Params, '', '&');
    $ctxData = array(
        'method'=>"POST",
        'header'=>"Connection: close\r\n".
        "Content-Type: application/x-www-form-urlencoded\r\n".
        "Content-Length: ".strlen($Request)."\r\n",
        'content'=>$Request);
    $ctx = stream_context_create(array('http' => $ctxData));
    
    // send API request
    $result = json_decode(file_get_contents(
        $APIUrl, false, $ctx));
    
    // check API result
    switch($result->{'status'}) {
        case "VALID_CONFIRMED":
        case "VALID_UNCONFIRMED":
            $linetype = $result->{'linetype'};
            $location = $result->{'location'};
            $countrycode = $result->{'countrycode'};
            $formatnational = $result->{'formatnational'};
            $formatinternational = $result->{'formatinternational'};
            $mcc = $result->{'mcc'};
            $mnc = $result->{'mnc'};
        case "INVALID": 
            echo $PhoneNumber." is ".$result->{'status'};
            break;
        default:
            echo $result->{'info'};
    }
    ...
              
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    
    import org.apache.http.util.EntityUtils;
    import org.json.simple.JSONObject;
    import org.json.simple.parser.JSONParser;
    import org.json.simple.parser.ParseException;
    ...
    HttpClient client = new DefaultHttpClient();
    String PhoneNumber = "+49 9874 322466";
    String CountryCode = "us";
    String Locale = "en";
    String ApiKey = "your API key";
    String APIURL = "https://api.phone-validator.net/api/v2/verify";
    try {
        HttpPost request = new HttpPost(APIURL);
        List <NameValuePair> Input = new ArrayList<NameValuePair>();
        Input.add(new BasicNameValuePair("PhoneNumber", PhoneNumber));
        Input.add(new BasicNameValuePair("CountryCode", CountryCode));
        Input.add(new BasicNameValuePair("Locale", Locale));
        Input.add(new BasicNameValuePair("APIKey", ApiKey));
        request.setEntity(new UrlEncodedFormEntity(Input));
        HttpResponse response = client.execute(request);
        HttpEntity entity = response.getEntity();
        String Output = EntityUtils.toString(entity, "UTF-8");
        JSONParser parser = new JSONParser();
        Object obj = parser.parse(Output);
        JSONObject jsonObject = (JSONObject) obj;
        String status = (String) jsonObject.get("status");
        switch (status) {
            case "VALID_CONFIRMED":
            case "VALID_UNCONFIRMED":
                String LineType = (String) jsonObject.get("linetype");
                String Location = (String) jsonObject.get("location");
                String CountryCode = (String) jsonObject.get("countrycode");
                String FormatNational = (String) jsonObject.get("formatnational");
                String FormatIntl = (String) jsonObject.get("formatinternational");
                String MCC = (String) jsonObject.get("mcc");
                String MNC = (String) jsonObject.get("mnc");
                break;
            case "INVALID": break;
            default:
        }
        ...
    } catch (IOException e) {
        e.printStackTrace();
    } catch (ParseException e) {
        e.printStackTrace();
    } finally {
        client.getConnectionManager().shutdown();
    }
    ...
              
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    ...
    
    private class APIResult
    {
        public String status { get; set; }
        public String linetype { get; set; }
        public String location { get; set; }
        public String countrycode { get; set; }
        public String formatnational { get; set; }
        public String formatinternational { get; set; }
        public String mcc { get; set; }
        public String mnc { get; set; }
    }
    
    const String APIURL = "https://api.phone-validator.net/api/v2/verify";
    HttpClient client = new HttpClient();
    String PhoneNumber = "+49 9874 322466";
    String CountryCode = "us";
    String Locale = "en-US";
    String ApiKey = "your API key";
    
    var postData = new List<KeyValuePair<string, string>>();
    postData.Add(new KeyValuePair<string, string>("PhoneNumber", PhoneNumber));
    postData.Add(new KeyValuePair<string, string>("CountryCode", CountryCode));
    postData.Add(new KeyValuePair<string, string>("Locale", Locale));
    postData.Add(new KeyValuePair<string, string>("APIKey", APIKey));
    
    HttpContent content = new FormUrlEncodedContent(postData);
    
    HttpResponseMessage result = client.PostAsync(APIURL, content).Result;
    string resultContent = result.Content.ReadAsStringAsync().Result;
    
    APIResult res = new System.Web.Script.Serialization.JavaScriptSerializer().
    Deserialize<APIResult>(resultContent);
    
    switch (res.status) {
        case "VALID_CONFIRMED":
        case "VALID_UNCONFIRMED":
            String LineType = res.linetype;
            String Location = res.location;
            String CountryCode = res.countrycode;
            String FormatNational = res.formatnational;
            String FormatInternational = res.formatinternational;
            String MCC = res.mcc;
            String MNC = res.mnc;
            break;
        case "INVALID": break;
        default:
    }
    ...
              
    ...
    Private Sub checkPhoneNumber(ByVal PhoneNumber As String,
                           ByVal CountryCode As String,
                           ByVal Locale As String,
                           ByVal APIKey As String)
        Const APIURL As String = "https://api.phone-validator.net/api/v2/verify"
        Using client As New Net.WebClient
          Dim postData As New Specialized.NameValueCollection
          postData.Add("PhoneNumber", PhoneNumber)
          postData.Add("CountryCode", CountryCode)
          postData.Add("Locale", Locale)
          postData.Add("APIKey", APIKey)
          Dim reply = client.UploadValues(APIURL, "POST", postData)
          Dim data As String = (New System.Text.UTF8Encoding).GetString(reply)
          Dim res = New System.Web.Script.Serialization.JavaScriptSerializer().
            Deserialize(Of APIResult)(data)        
          Select Case res.status
            Case "VALID_CONFIRMED"
            Case "VALID_UNCONFIRMED"
                Dim LineType As String = res.linetype
                Dim Location As String = res.location
                Dim CountryCode As String = res.countrycode
                Dim FormatNational As String = res.formatnational
                Dim FormatInternational As String = res.formatinternational
                Dim MCC As String = res.mcc
                Dim MNC As String = res.mnc
            Case "INVALID"
                ...
            Case Else
                ...
          End Select
        End Using
    End Sub
    
    Private Class APIResult
        Public status As String
        Public linetype As String
        Public location As String
        Public countrycode As String
        Public formatnational As String
        Public formatinternational As String
        Public mcc As String
        Public mnc As String
    End Class
    ...