bZapper — gateway de WhatsApp
O que é? Um gateway de WhatsApp multi-tenant via REST: conecte números, envie e receba todos os tipos de mensagem, gerencie grupos, rotacione números com redundância, receba webhooks assinados e acompanhe tudo em tempo real — com SDKs oficiais em 5 linguagens.
No painel (admin) há um Playground: escolha a operação, ajuste o payload, envie de verdade e copie o exemplo pronto em cURL/Node/Python/PHP/Go/Java.
Quickstart (3 passos)
# 1) Crie um número e conecte (QR no painel ou via API)
curl -X POST https://api.bzapper.com.br/instances \
-H "Authorization: Bearer bz_live_..." -H "Content-Type: application/json" \
-d '{"phone":"+5511999999999"}'
# 2) Envie sua primeira mensagem (o `to` pode ser E.164 ou JID)
curl -X POST https://api.bzapper.com.br/messages/text \
-H "Authorization: Bearer bz_live_..." -H "Content-Type: application/json" \
-d '{"to":"+5511888888888","body":"Olá do bZapper 👋"}'
# 3) Receba as respostas: cadastre um webhook (HMAC) ou ouça o SSE /stream
Autenticação: Authorization: Bearer <api_key> em toda chamada. Gere chaves no
painel (ou POST /keys). Erros trazem um código neutro estável + mensagem
traduzida — use sempre o code, nunca o texto.
Tudo que o bZapper faz
💬 Enviar mensagens (13 tipos)
Texto, imagem, vídeo, documento, áudio/voz (ptt), sticker, localização,
contato (vCard), enquete, reação (emoji), botões, lista e OTP
(código de verificação), além de encaminhar, editar e revogar. Recursos por
envio: responder (quoted_message_id), menções em grupo, client_reference
(sua correlação), escolha de número (instance_id) ou pool (pool_id),
afinidade (sticky), e os campos groups[]/tags[] (carimbam o contato) e
force. Veja Tipos de mensagem e
Boas práticas de envio.
📣 Envio para listas
Uma mensagem para muitos contatos, com consentimento em primeiro lugar: supressão de opt-out, controle de ritmo, distribuição entre números, pausa/retomar, dry-run e supressão automática. Veja Campanhas.
⏰ Envio agendado
Qualquer envio aceita scheduled_at (RFC3339): o bZapper guarda e dispara na hora
exata, sem cron no seu servidor. Veja Envio agendado.
🗂️ Gestão de contatos (CRM)
Base de contatos com perfil rico (nome, telefone, e-mail, documento, endereço em campos separados), tags e grupos de contato (dicionários próprios), correlação automática com projeto e número a cada mensagem, filtros avançados (busca, tags any/all, grupos, status, cidade/UF…), timeline, notas e opt-out/supressão. Veja Gestão de contatos.
📥 Receber & conversar
Webhooks (message.received, message.status, instance.status…) com
assinatura HMAC-SHA256, retry e dedup — e SSE (/stream) pra status/QR ao
vivo. Inbox: listar conversas, histórico paginado, arquivar/fixar/silenciar/
marcar lido. Veja Atendimento e afinidade de conversa.
👥 Grupos de WhatsApp
Listar, criar, ver info, entrar por convite, gerenciar participantes (adicionar/remover/promover/rebaixar), sair, pegar o link de convite e tratar pedidos de entrada (join-requests).
🟢 Presença & ações avançadas
Enviar “digitando…/gravando…” (funciona em grupos), checar se um número está no WhatsApp (e obter o JID correto), bloquear/desbloquear número e ver a blocklist, etiquetas (labels), chats (arquivar/fixar/silenciar/marcar lido) e chamadas (recusar/ofertar).
📱 Números (instâncias)
Criar, conectar (QR ou código), status, desconectar, logout, perfil white-label (nome/foto/recado), privacidade, proxy por número e filtros de entrada (broadcast/status/grupos).
🔄 Redundância entre números
Pools com estratégias (round_robin, least_used, health_weighted),
ramp-up de número novo, health score vivo e afinidade de conversa
(sticky). Entenda em Conceitos.
🔒 Privacidade & LGPD
Opt-out por palavra-chave (PARAR/SAIR), block list de dois níveis, trilha de consentimento e mídia privada por URL assinada (presign) com TTL. Veja Privacidade & LGPD.
🧩 Widget embutível
Widget flutuante/embed para seus clientes gerenciarem os números do projeto com um mini-dashboard. Veja Widget.
🧰 Plataforma
Conta, projetos isolados e usuários (papéis admin/agent), API keys por
projeto, uso & métricas (enviadas, entregues, lidas, falhas, taxa de entrega, por
tipo e por número), mídia servida por URL assinada, planos & faturamento
(Free/Pro, add-ons via carrinho, Stripe), brand/white-label, i18n (6 idiomas) e
SDKs em 5 linguagens + Playground + OpenAPI.
Próximos passos
- Conta, projetos e usuários — projetos isolados, keys por projeto, equipe.
- Conceitos — instância, redundância, ramp-up de volume, LID.
- Tipos de mensagem e payloads — envio e recebimento (poll, voto, mídia, localização…).
- Gestão de contatos — CRM: perfil, tags, grupos, filtros, timeline, opt-out.
- Campanhas — envio para listas com opt-out e controle de ritmo.
- Envio agendado — programe qualquer envio para a hora certa.
- Atendimento (sticky) — manter a conversa no mesmo número.
- Webhooks — eventos e verificação de assinatura.
- Privacidade & LGPD — consentimento, opt-out, supressão, mídia privada.
- Boas práticas de envio — como manter a entrega saudável.
- Widget embutível — mini-dashboard dos números para seus clientes.
- Planos & faturamento — Free/Pro, add-ons e faturas.
- SDKs oficiais — Node, Python, PHP, Go, Java.
- Referência da API — todos os endpoints, payloads, retornos e erros.
Documentação em pt-BR, inglês, espanhol, italiano, alemão e francês — troque no seletor de idioma no topo.