Skip to the content

IsValid

Checks if a telephone number is valid.

Live Demo

To connect to this service you'll need to use one of these endpoints:

JSON
Open API
SOAP

Description

Checks a telephone number for validity. Details of the number's validity and other attributes are included in the result.

This service is deprecated in favour of the PhoneValidation service. This service will remain operational for the foreseeable future, but the PhoneValidation service should be used for all new development.

The telephone number can be supplied as either a full international number with leading + or 00 prefix (e.g. +441513554555) or as a national number (e.g. 01513554555), with or without additional formatting (e.g. spaces, brackets etc.). If a number is supplied as a national number, the default country code is used to identify which country the number is located in. The default country code can be supplied as any of:

  • international telephone dialling code (e.g. 44)
  • ISO 2-character code (e.g. GB)
  • ISO 3-character code (e.g. GBR)
  • ISO standard English country name (e.g United Kingdom)

If the ValidationResult member of the returned structure is Invalid, the supplied telephone number is invalid and cannot be called. If it is Valid the telephone number is likely to be valid. This does not necessarily mean that the number can be called and is owned by the expected person, but does indicate that the number lies within a range of numbers that have been allocated for use. If it is NoCoverage we cannot provide an indication to it's validity and you should normally treat it as valid.

This service is not appropriate if you require an absolute indication that a telephone number is valid for a particular individual. In those circumstances, you should consider the use of a telephone number capture service. However, this service does provide a quick and inexpensive method for preventing accidentally mis-typed numbers.

Numbers that start with 070, often referred to as personal numbers, are incredibly difficult to validate with any certainty, due to their private nature. We have created an option you can pass in to the API code, ExcludeUnlikelyNumbers, which will stop the likes of 07000000000 or 07077777777 getting through our validation. Please bear in mind that with this option, you may well exclude a small amount of genuine numbers.

Credit Usage

Each request to this method consumes 1 International Telephone Validation credit for each request, except where a "NoCoverage" result is returned. If the "UseLineValidation" option is specified and a UK landline number is entered, or if the "UseMobileValidation" and a mobile number is entered, a Live Number Testing or Mobile Validation credit will be consumed instead.

Parameters

The following parameters can be supplied to this method

username

username

See the available authentication methods. If you are using username & password authentication, specify the username to authenticate as. If you are using API Key authentication and you are not using the JSON, Javascript or ADO APIs, use your API Key here with the prefix apikey-, e.g. apikey-ABCD-1234-EFGH-5678
password

password

If you are using username & password authentication, specify the password to use for authentication. Otherwise leave this blank.
telephoneNumber

telephoneNumber

The telephone number to validate

defaultCountry

defaultCountry

The ISO 2-character country code or international dialling code of the country to validate the telephoneNumber in, unless that number contains an explicit country code prefix.

options

options

An array of options that control further details of how this method operates. See the Advanced Options section below for more information.

Advanced Options

The following options can be specified as part of the option parameter. Each option is specified as a key/value pair. The list of available names is shown below, along with a description of the allowable values for that name.

Common Options
Name Description
ApplicationName

ApplicationName

Gives the name of the calling application - used to break down usage by application in the usage reports on the dashboard
Service-Specific Options
Name Description
UseMobileValidation

UseMobileValidation

If set to true then the service will use MobileValidation on any number it recognises as a mobile number and InternationalTelephoneValidation on all other numbers. Any validation call will be debited either an InternationalTelephoneValidation credit or a MobileValidation credit accordingly so please ensure you have MobileValidation credits available before using this option. The option defaults to false.

UseLineValidation

UseLineValidation

If set to true then the service will use LandlineValidation on any number it recognises as a UK landline number and InternationalTelephoneValidation on all other numbers. Any validation call will be debited either an InternationalTelephoneValidation credit or a LandlineValidation credit accordingly so please ensure you have LandlineValidation credits available before using this option. The option defaults to false.

RequiredCountry

RequiredCountry

Indicates the country that the number must be in to be considered valid. This should be provided as the ISO 2-character country code.

AllowedPrefixes

AllowedPrefixes

A comma-separated list of prefixes in standard international format that the number must start with to be treated as valid. For example, use "+441,+442" to allow only standard UK landline numbers.

BarredPrefixes

BarredPrefixes

A comma-separated list of prefixes in standard international format that will cause the number to be treated as invalid. For example, use "+90,+447781" to block any Indian numbers or numbers allocated to C&W Guernsey.

UseUnavailableStatus

UseUnavailableStatus

When using the UseMobileValidation option and the mobile number is unavailable, this option causes the service to return Unavailable as the ValidationResult instead of the default Valid. This allows you to get additional insight into the status of the number.

UseAmbiguousStatus

UseAmbiguousStatus

When using the UseLineValidation option and the landline number results in an ambiguous status, this option causes the service to return Ambiguous as the ValidationResult instead of the default Valid. This allows you to get additional insight into the status of the number.

TreatUnavailableMobileAsInvalid

TreatUnavailableMobileAsInvalid

When using the UseMobileValidation option and the mobile number is unavailable, this option causes the service to return Invalid as the ValidationResult instead of the default Valid. This will cause your calling application to have a stricter level of validation for mobiles, i.e. they must be turned on.

ExcludeUnlikelyNumbers

ExcludeUnlikelyNumbers

If set to true, the service will perform an additional regex check and invalidate any unlikely numbers even if they are technically valid, such as 07000000000 or 01234567890

Results

This method returns an object containing the following fields:

Status

Status

Indicates whether the method call was successful, or if some error occurred. If the Success field is true, the other results described below can be used to get the results of the method. If Success is false, some error occurred in calling the method, such as the authentication failed or the account is out of credits. The details of the error can be obtained from the ErrorMessage field, and any other results should be ignored
Result

Result

Contains properties indicating the validity and other information for the supplied telephone number:

Name Description
TelephoneNumber The supplied telephone number presented in an international standard format
ValidationResult Indicates whether the telephone number is valid or not. The following values are available:
  • Valid - the telephone number is potentially valid
  • Invalid - the telephone number is invalid
  • NoCoverage - we do not have telephone number validation coverage for the required country. You will not be charged for this request
  • Unavailable - the telephone number is a valid mobile number but is currently unavailable - may be turned off or out of network coverage
  • Ambiguous - the telephone number is a potentially valid UK landline number but we receive an ambiguous result from the telephone network when trying to validate it fully
ValidationLevel Indicates the level to which we have validated the telephone number. The following values are available:
  • None - the number has not been validated
  • STDCode - the number has been validated to the main area code
  • Exchange - the number has been validated to an individual range of numbers; this usually maps to a single telephone exchange
  • FullNumber - the full telephone number has been validated live against the telephone network
NumberType Indicates the type of number. The following values are available:
  • Unknown - the type of telephone number could not be determined
  • Landline - the number is a geographic landline number
  • Mobile - the number is a mobile number
  • NonGeographic - the number is a non-geographic landline number
  • Special - the number is a premium rate or other similar class of special number
Location The physical location associated with the number. This will be blank where a location cannot be determined, e.g. for mobile numbers
Provider The name of the company providing the telephone service. This will normally not reflect the impact of number portability
CountryCode The ISO 2-character code of the country the number is registered in
CountryName The ISO standard name of the country the number is registered in

Live Demo

telephoneNumber
defaultCountry
options
Name Value
Common Options
Service-Specific Options

Sample Code