Opérateur d’un numéro de téléphone
Identifier l’opérateur d’un numéro et le type de ligne — mobile ou fixe — est un signal utile, mais le préfixe ne le révèle plus : la portabilité permet de garder son numéro en changeant d’opérateur.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
L’opérateur réel ne s’obtient qu’auprès du HLR, une base sous licence propre à chaque réseau. Ce service n’effectue pas cette interrogation HLR : il ne renvoie ni opérateur, ni type de ligne, ni pays. Ce qui fonctionne aujourd’hui, c’est la validation de la forme du numéro.
Pourquoi le préfixe ne donne plus l’opérateur
On a longtemps deviné l’opérateur d’après les premiers chiffres d’un mobile. La portabilité a changé la donne : un abonné garde son numéro en changeant d’opérateur, si bien que le préfixe ne dit plus rien de fiable. La seule source faisant autorité est le HLR de l’opérateur — une base sous licence, propre à chaque réseau. C’est pourquoi connaître l’opérateur réel est un service sous licence, pas une donnée qu’on déduit du numéro. Deviner à partir d’un préfixe périmé donne des réponses assurées et fausses.
Ce que ce service renvoie aujourd’hui
Ce service n’interroge pas le HLR. Il ne renvoie ni le nom de l’opérateur, ni le type de ligne (mobile ou fixe), ni le pays. Brancher une détection d’opérateur en direct exige un fournisseur HLR sous licence, non raccordé ici. Nous préférons le dire clairement plutôt que de renvoyer un opérateur deviné auquel votre logique d’acheminement ou de coût ferait ensuite confiance sans le savoir.
Ce qui est disponible : la validation de forme
Ce qui fonctionne aujourd’hui, c’est vérifier la forme d’un numéro : confirmer qu’il a une structure et une longueur plausibles pour son indicatif pays, et repérer un chiffre en trop ou en moins avant de s’en servir. C’est une capacité distincte et opérationnelle ; elle ne donne pas l’opérateur ni le type de ligne, mais elle écarte les numéros mal formés en amont, avant tout envoi vers un service d’opérateur sous licence.
Si vous avez besoin de la donnée opérateur
Si votre cas exige un acheminement par opérateur ou type de ligne, il faut un flux HLR sous licence : c’est une décision de capacité, pas une approximation que ce service tenterait. En attendant, validez la forme du numéro pour n’envoyer que des numéros bien formés au service d’opérateur que vous retenez, et traitez la détection d’opérateur comme une étape distincte, chez un fournisseur sous licence. L’accès au KIT fonctionne à l’usage, tarif affiché, et une tâche en échec n’est jamais facturée.
Cas d’usage
Écarter un numéro mal saisi à l’inscription
Valider la forme du numéro à l’inscription rejette un chiffre en trop ou en moins avant l’enregistrement, via la validation de forme et non un contrôle d’opérateur.
Préparer des numéros pour un contrôle d’opérateur sous licence
Valider la forme d’abord garantit que seuls des numéros bien formés partent vers un service HLR sous licence, sans gaspiller de requête sur une saisie erronée.
Ne pas choisir le canal sur un opérateur deviné
Le type de ligne n’étant pas renvoyé ici, ne décidez pas SMS ou appel d’après un opérateur deviné ; validez la forme et confirmez l’acheminement via le retour de votre prestataire SMS.
Questions fréquentes
Pourquoi le préfixe ne suffit-il pas à connaître l’opérateur ?
Parce que la portabilité permet de garder son numéro en changeant d’opérateur ; seul le HLR sous licence donne l’opérateur réel. Ce service n’effectue pas cette interrogation et ne renvoie donc pas l’opérateur.
Que renvoie ce service aujourd’hui ?
Ni opérateur, ni type de ligne, ni pays : il n’interroge pas le HLR. Ce qui fonctionne, c’est la validation de la forme du numéro ; la détection d’opérateur exige un fournisseur sous licence.
Révélez-vous l’identité ou l’adresse de l’abonné ?
Non. Et il ne renvoie pas non plus l’opérateur ni le type de ligne : ni identité, ni adresse, ni opérateur ne sont fournis ici.
Combien coûte une requête ?
$0.002 par numéro, en dollars US, tarif affiché sans abonnement. L’achat se fait par PayPal, directement, et une facture peut vous être remise sur demande.
Le numéro testé est-il conservé ?
Le numéro sert le temps du traitement, puis n’est pas conservé à des fins commerciales ni revendu.
Fonctionne-t-il pour les numéros étrangers ?
La validation de forme reconnaît l’indicatif pays de nombreux pays. La détection d’opérateur, elle, n’est pas fournie ici et relèverait d’un HLR sous licence, pays par pays.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/verify/phone-carrier \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"phone":"+34600123456"}'const res = await fetch("https://api.kit.forhosting.com/verify/phone-carrier", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"phone": "+34600123456"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/phone-carrier",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"phone": "+34600123456"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/phone-carrier", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"phone":"+34600123456"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"phone":"+34600123456"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/phone-carrier", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"phone": "+34600123456"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.phone_carrier",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |