Referência da API — Central BM
Todos os endpoints do sistema: o painel interno (usado pelo app, com token de sessão), o webhook da Meta e a API pública v1 para integrações de terceiros.
Visão geral
Três superfícies, três níveis de acesso.
Autenticação
Sessão do painel.
Autentica e devolve o token de sessão.
emailobrigatóriopasswordobrigatórioDados do usuário logado.
Revoga o token atual.
Estado & Dashboard
Leitura do painel.
Estado completo no formato do app (BMs, WABAs, números, clientes, templates, campanhas, tarefas, usuários). É o que o front carrega.
KPIs de risco (BMs, WABAs, números, qualidade, chamados).
Alertas ativos por severidade.
Inventário — BMs, WABAs e Números
Status, tier e qualidade vêm da Meta (via sincronização); não são editáveis manualmente.
Lista BMs com WABAs, números e resumo. Aceita ?busca=, ?status=, ?qualidade=.
Cadastra uma BM.
nomeobrigatórioclienteobrigatórioid_metaBusiness IDaccess_tokentoken de usuário (System User)app_id, app_secretcredenciais do appDetalhe de uma BM.
Edita a BM. Tokens em branco = mantém os atuais; cliente_id vincula um cliente.
Remove a BM.
Sincroniza com a Meta: puxa WABAs, números, tier, qualidade, templates, fotos e status (banimento via health_status).
CRUD de WABA. PUT aceita status e cliente_id.
Número: criar, editar (nome_exibicao, cliente_id) e remover. Cada número pode ter seu próprio cliente.
Atualiza a foto de perfil do número na Meta (upload multipart foto).
Clientes
Empresas vinculáveis a BM, WABA ou número. Cada cliente pode ter um webhook.
Lista clientes com contagem de vínculos.
CRUD de cliente.
nomeobrigatóriodocumentoCNPJ (opcional)webhook_urlURL para receber eventos dos números do clienteTemplates
Lista e detalhe (nome, categoria, status, corpo, variáveis).
CRUD de template.
Campanhas
Fluxo: criar (com CSV) → validar na Strong → pendente de aprovação → aprovar → disparar.
Lista e detalhe.
Cria a campanha e envia os contatos para higienização (Strong).
nome, template_id, volumedados básicosnumeros[]números de enviocontatos[]{numero, nome, dados} do CSVvariaveis[], imagem_url, botao_variavelparâmetros do templateConsulta o relatório da Strong e marca contatos válidos/inválidos.
Aprova e inicia os disparos (respeita DISPARO_ENABLED).
(Re)dispara manualmente.
Envia um teste da campanha para um número (destino).
Contatos (válidos/inválidos), KPIs, envios e exportação CSV.
Editar (nome, status, volume) e remover.
Suporte & Usuários
Chamados de suporte (kanban).
CRUD de usuários. PUT permite trocar nome, e-mail, papel, status e escopo.
Gera o token da API pública v1 para o usuário.
Consultas do usuário com papel Cliente (números e histórico).
Wiki
Base de conhecimento editável da equipe.
Webhook da Meta
Recebe eventos da Meta, valida a assinatura e reencaminha por número para o webhook do cliente.
Handshake de verificação. Responde o hub.challenge se o token confere.
Recebe eventos. Confere X-Hub-Signature-256; se válida (ou sem App Secret cadastrado ainda), reencaminha o evento daquele número para o webhook do cliente. Assinatura inválida = não reencaminha.
Tudo que a Meta tentou enviar (verificações e eventos), com status da assinatura e do reenvio. Visualização em /webhook-logs. Aceita ?tipo=evento|verificacao.
API pública v1 — envio por terceiros
Prefixo /api/v1 · Bearer token do usuário · limite 120 req/min.
Números disponíveis para o token, com enviadas nas últimas 24h.
Templates aprovados (deduplicados por nome).
Envia uma mensagem por template. Escolhe automaticamente um número elegível. Suporta dry_run.
todestinotemplatenome do templatevariables[], image_url, button_variableparâmetrosdry_runsimula sem enviarStatus de um envio.