Três abordagens práticas, da mais simples à mais escalável:
1. Teste Direto (Pontual)
- Ligue. Toca = ativo. "Fora de serviço" / ocupado rápido = inativo ou portado.
- Mande SMS. Recibo de entrega (DLR) ou resposta confirma atividade. Sem resposta ≠ inativo (pode ser bloqueado, Não Perturbe, ou usuário ignorando).
2. APIs de Consulta de Operadora (Em Massa/Automatizado)
- Twilio Lookup — Retorna tipo de linha (móvel/fixo/VoIP), operadora e status ativo (se operadora compartilhar). Pay-per-request.
- Numverify, AbstractAPI, PhoneValidator — Endpoints REST similares; alguns com tiers gratuitos.
- Dados LRN/NPAC — Status de portabilidade autoritativo; requer acesso carrier-grade.
3. Serviços de Busca de Pessoas Terceiros (Consumidor)
- BeenVerified, Spokeo, Whitepages, TruePeopleSearch — Agregam registros públicos + dados de operadora. Precisão varia; trate como indicativo.
Ressalvas
- Portabilidade de número cria janela de 24–48h onde operadora antiga diz "inativo" mas nova ainda não propagou totalmente.
- Linhas pré-pagas com saldo zero podem temporariamente parecer inativas mas reativam na recarga.
- Conformidade DNC/TCPA: verifique consentimento antes de discar/mandar SMS para fins comerciais.
Para um número: ligue ou mande SMS. Para listas: use API de consulta de operadora com callbacks DLR.