The /TEL/ endpoint validates and standardises a landline or mobile phone number, with optional Level 2 verification for French mobile numbers.
When to use this endpoint - Call /TEL/ using DQE's legacy XML/form-based integration to validate a phone number and retrieve its carrier and type. Looking for the modern JSON integration instead? See Restful Phone API (/phonelookup) →
using var client = new HttpClient();
var url = "https://{SERVER_ADDRESS}/TEL/" +
"?Pays=FRA&Tel=0611223344&Licence={LICENCE_CODE}";
var response = await client.GetAsync(url);
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
using var client = new HttpClient();
var form = new Dictionary<string, string> {
["Pays"] = "FRA",
["Tel"] = "0611223344",
["Licence"] = "{LICENCE_CODE}"
};
var response = await client.PostAsync(
"https://{SERVER_ADDRESS}/TEL/",
new FormUrlEncodedContent(form));
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
International format without spaces and without leading plus sign
49301234567 / 33123456789 / 1202-555-0123
Response
On success, the API returns a JSON object with a single key "1" — a legacy artifact of this endpoint's implementation — wrapping the actual result fields below.
Level 1 vs Level 2 -TelOrigine, Geolocation, Tel, Operator, IdError, OldOperator, and Type are always returned (Level 1 verification: existence and format of the phone number). LabelStatus and an updated Status value are only added when Status=Y is passed in the request (Level 2 verification, French mobile numbers only).
Level 1 verification fields
Key
Description
Type
TelOrigine
Phone number analyzed.
String
Geolocation
Location where the number was initially assigned.
String
Tel
Phone number formatted according to the selected format.
String
Ported
Empty in level 1 verification.
String
Operator
Operator to whom the phone number was initially assigned.
String
IdError
2: valid syntax; 1: valid and attributed; 0: invalid or non-existing number.
Integer
OldOperator
Original operator of the phone number.
String
Type
MOBILE or FIXED_LINE or FIXED_LINE_OR_MOBILE or Empty.
String
Level 2 verification fields
Warning: reachable information is no longer provided. This variable is retained for historical purposes.
Level 2 verification provides activity status and operator information. Enable it by passing Status=Y in the request. The JSON response contains the following additional (or updated) fields:
Key
Description
Type
Ported
Y if the number has been ported, N otherwise.
String(1)
Operator
Current operator of the phone number.
String
OldOperator
Previous operator when the number has been ported.
String
LabelStatus
Reachable or No reachable information (mobile only).