Verificação de números
Enviar para números que não existem no WhatsApp é um sinal ruim. Por isso o LiteZap verifica o número antes do primeiro envio e oferece um endpoint para verificar em lote.
Na fila de envio
Seção intitulada “Na fila de envio”- Antes do primeiro envio a um número sem chat, o despachante pergunta ao WhatsApp se ele tem conta.
- Sem WhatsApp: a mensagem falha com
invalid_number, sem enviar nada. - Com outro formato: no Brasil, o WhatsApp pode conhecer o número com ou sem o 9º dígito. O LiteZap usa o JID que
o WhatsApp devolve e redireciona os itens daquele destinatário. Por isso o chat pode aparecer com um
jiddiferente do número digitado: use ojiddeGET /chatsou decheck-numbersnas rotas/chats/{jid}/.... - Falha na consulta: adia só aquele item, com espera de 1, 2, 5 e 15 minutos; na 5ª falha seguida ele vira
failed(worker_error). Worker indisponível não conta como falha de consulta. - Ritmo: cada consulta que vai à rede conta como um envio para
min_interval_msemax_per_minute, tem cota de 30 consultas novas por minuto e, com a rampa ligada, respeita o limite diário dela. Acima disso, o item espera.
Endpoint check-numbers
Seção intitulada “Endpoint check-numbers”curl -s -X POST localhost:8787/v1/instances/$ID/check-numbers -H "Authorization: Bearer $TOK" \ -d '{"phones":["5511999999999","5511888888888"]}'{ "results": [ { "phone": "5511888888888", "exists": false } ]}| Regra | Valor |
|---|---|
| Números por chamada | 1 a 10 (DDI + DDD + número, 10 a 15 dígitos) |
| Consultas novas por minuto | 10 por instância (cota própria, separada da fila) |
| Consultas novas por dia | 200 por instância (dia em UTC) |
| Cache de quem tem WhatsApp | 30 dias |
| Cache de quem não tem | 24 horas |
Números já em cache não gastam cota. Acima dos limites, a resposta é 429 rate_limited (retryable: true).

