De qual operadora é esse número?
Saber a operadora associada a um número — Vivo, Claro, TIM — é útil, mas a portabilidade quebrou a relação entre prefixo e operadora, e descobrir a operadora atual exige consultar uma base licenciada (HLR) da própria rede.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Este endpoint não faz essa consulta: ele não retorna a operadora, o tipo de linha nem o país. O que funciona hoje é validar o formato do número. Se você depende do dado de operadora, ele precisa vir de um provedor licenciado.
Prefixo não diz mais a operadora
Antes da portabilidade, o começo do número entregava a operadora. Hoje, milhões de linhas trocaram de dona levando o número junto, e qualquer tabela de prefixos vira chute. A única fonte confiável da operadora atual é o HLR da rede — uma base licenciada, por operadora. Por isso descobrir a operadora de verdade é um serviço licenciado, não algo que se deduz do número. Chutar a partir de um prefixo velho dá respostas confiantes e erradas, e é justamente isso que este endpoint se recusa a fazer.
O que este endpoint retorna hoje
Este endpoint não faz a consulta ao HLR. Ele não retorna a operadora, o tipo de linha nem o país. Ligar a detecção de operadora em vivo exige um provedor HLR licenciado, que não está conectado aqui. Preferimos dizer isso na página a devolver uma operadora chutada, em que a sua regra de roteamento ou de custo de SMS iria confiar sem saber que é um palpite.
O que dá para fazer hoje: validar o formato
O que funciona é validar o formato do número (com DDD): confere se tem estrutura e tamanho plausíveis, pegando um dígito a mais ou a menos antes de usar. O validador de telefone do KIT faz isso — grátis no navegador — e é o passo certo antes de mandar qualquer número a um serviço de operadora licenciado. Ele não diz a operadora, mas barra o número quebrado na porta.
Se você precisa do dado de operadora
Se o seu caso realmente depende de rotear por operadora — custo de SMS, roteamento de chamada — esse dado precisa vir de um feed HLR licenciado, uma decisão de capacidade, não algo que este endpoint aproxima. Enquanto isso, valide o formato para mandar só números bem formados ao serviço que você contratar, e trate a detecção de operadora como um passo à parte, de um provedor licenciado.
Casos de uso
Barrar número quebrado no cadastro
Validar o formato do telefone no cadastro rejeita um número com um dígito a mais ou a menos antes de salvar — com o validador de telefone, não com uma consulta de operadora.
Preparar a base para uma consulta de operadora licenciada
Validar o formato antes garante que só números bem formados vão ao serviço HLR licenciado que você contratar, sem gastar consulta em número quebrado.
Não decidir rota de SMS por chute
Como o tipo de operadora não vem daqui, não escolha a rota de SMS por um dado chutado; valide o formato e confirme a entrega pelo retorno do seu provedor de SMS.
Perguntas frequentes
Este endpoint retorna a operadora?
Não. Ele não retorna a operadora, o tipo de linha nem o país. Por causa da portabilidade, a operadora atual só vem de uma base licenciada (HLR); um prefixo não serve, e este endpoint não faz essa consulta.
O que dá para usar hoje?
A validação de formato do número — grátis no navegador, no validador de telefone do KIT. A detecção de operadora exige um provedor licenciado e não é entregue por este endpoint.
Revela o nome do dono do número?
Não. E também não retorna a operadora: dado do titular, nunca; operadora, exigiria uma base licenciada que aqui não está conectada.
Funciona para número fixo?
Para validar a estrutura de qualquer número, fixo incluído, existe o validador de telefone do KIT — grátis no navegador. Este endpoint não distingue fixo de celular, pois isso exigiria uma consulta HLR.
Como eu pago?
Por uso: US$ 0,002 por consulta, via PayPal, sem plano nem franquia. O acesso ao KIT roda com saldo pré-pago e tarefa que falha não é cobrada.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
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)Exemplo de requisição
{
"phone": "+34600123456"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.phone_carrier",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |