LIVE

Emails e telefones, validados como deve ser.

Email precisa de sintaxe RFC 5322 e detecção de typos contra provedores comuns. Telefones precisam de resolução de prefixo e saída E.164. A Normadata embrulha os dois num endpoint — sem lock-in de SDK, sem tabela de dial codes pra manter.

4
campos
Global
parse de telefone
0
consultas gov
EA
acesso antecipado
01 · PROBLEMA

RFC 5322 não é regex, libphonenumber não é biblioteca que você quer shipar

Email é uma spec de 50 páginas que nenhum regex de Stack Overflow cobre certo. Telefones chegam em todo formato — "+54 9 11 …", "011 …", "15 …" — e só o libphonenumber sabe o que é móvel, fixo ou inválido. Empacotar qualquer uma sobe o tamanho do bundle e o custo de manutenção; ambas precisam de regras que mudam quando abrem blocos novos de móveis. A Normadata centraliza as duas atrás de um endpoint REST pra seu cliente ficar leve e as regras viverem no servidor.

02 · CAPACIDADES

Email + telefone, numa chamada

Quatro campos independentes, cada um normalizado e explicado.

01

Email · RFC 5322

Parse RFC completo de local-part e domínio. Comprimento limitado por RFC 5321 (254 chars).

email → normalized, valid
02

Detecção de typos

Fuzzy match contra provedores comuns: gmial.com → gmail.com, hotnail.com → hotmail.com, com typo_corrected: true.

email → suggested_domain
03

Telefone · E.164

Parse com libphonenumber. Detecção de país pelo prefixo ou X-Country-Hint quando o prefixo está ausente.

phone → e164, country
04

Móvel vs fixo

Plano de numeração por país classifica a linha: mobile, fixed_line, voip, toll_free ou unknown.

phone → type
04 · USO

Um payload, ambos os campos

Mande telefone e email na mesma chamada. O country hint ajuda o parse de telefone quando o usuário omitiu o prefixo.

POST /v1/verify/contact
$ curl -X POST https://api.normadata.io/v1/verify/contact \
    -H "X-API-Key: nd_your_key_here_22_random_bytes" \
    -H "X-Country-Hint: AR" \
    -d '{"phone":"+54 9 11 3456-7890","email":"juan@gmial.com"}'
Response · 200 OK
{
  "contains_pii": true,
  "country_hint": "AR",
  "processed_at": "2026-05-15T01: 00: 00Z",
  "phone": {
    "source":       "+54 9 11 3456-7890",
    "e164":         "+5491134567890",
    "country":      "AR",
    "country_code": 54,
    "type":         "mobile",
    "valid": true
  },
  "email": {
    "source":           "juan@gmial.com",
    "normalized":       "juan@gmail.com",
    "suggested_domain": "gmail.com",
    "typo_corrected": true,
    "valid": true
  }
}

Um endpoint, dois dos campos mais sujos do seu form

Grátis durante o acesso antecipado. Manda um email e respondemos em 24 horas.