API REST para WhatsApp

API FbzIA é uma implementação da biblioteca whatsmeow como um serviço de API RESTful simples, com suporte para múltiplos dispositivos e sessões simultâneas.

Principais Recursos

API FbzIA oferece uma API completa para interagir com o WhatsApp de forma eficiente sem usar recursos pesados como Puppeteer ou emuladores Android.

Alto Desempenho

Comunicação direta com servidores WhatsApp via websocket, resultando em menor uso de memória e CPU.

Múltiplas Sessões

Suporte para múltiplos dispositivos e usuários simultaneamente na mesma instância.

Mensagens Ricas

Envie texto, imagens, áudio, documentos, vídeos, stickers, localização e contatos.

Webhooks

Configure webhooks para receber notificações em tempo real de eventos e mensagens.

Verificação de Usuários

Verifique se números de telefone têm WhatsApp e obtenha informações de perfil.

Autenticação Simples

Sistema de token para autenticação de usuário fácil e segura.

Endpoints da API

API FbzIA oferece diversos endpoints para interagir com o WhatsApp, organizados em categorias funcionais.

Sessão

Gerencie sessões do WhatsApp com facilidade.

  • Conectar ao WhatsApp
  • Desconectar, Logout
  • Verificar status de conexão
  • Obter QR Code para escaneamento
  • Parear por Número de Telefone
  • Configuração de proxy

Chat

Interaja com chats e mensagens.

  • Marcar mensagens como lidas
  • Deletar mensagens
  • Enviar reações a mensagens
  • Definir presença (digitando/gravando)
  • Baixar imagens
  • Baixar vídeos
  • Baixar documentos

Mensagens

Envie diferentes tipos de mensagens.

  • Texto, imagens, áudio
  • Documentos, vídeos, stickers
  • Localização, contatos
  • Templates com botões

Usuários

Obtenha informações sobre usuários.

  • Verificar se números têm WhatsApp
  • Obter informações de perfil
  • Obter avatar/foto de perfil
  • Listar contatos
  • Definir presença global

Grupos

Gerencie grupos do WhatsApp.

  • Listar grupos inscritos
  • Obter informações do grupo
  • Obter link de convite
  • Alterar nome do grupo
  • Alterar foto do grupo

Webhooks

Configure notificações para eventos.

  • Definir URL do webhook
  • Inscrever-se em eventos específicos
  • Atualizar configuração
  • Remover webhook

Demo Interativa

Veja como é fácil usar a API FbzIA para interagir com o WhatsApp.

F

Assistente FbzIA

Online

Aviso Importante

Usar este software em violação aos Termos de Serviço do WhatsApp pode resultar no banimento do seu número. Tenha muito cuidado, não use para SPAM ou algo similar. Use por sua conta e risco. Se você precisa desenvolver algo com interesse comercial, contate um provedor global de soluções WhatsApp e inscreva-se no serviço WhatsApp Business API.

Como Usar

Instruções para começar a usar a API FbzIA rapidamente.

Pré-requisitos

Para executar a API FbzIA, você precisa de:

  • Go (Linguagem de Programação Go)
  • Docker (opcional, para containerização)
  • Postgres (opcional, pode funcionar standalone usando SQLite)

Compilação

Compile o projeto com o seguinte comando:

go build .

Configuração

API FbzIA usa um arquivo .env para configuração. Aqui estão as configurações necessárias:

Para PostgresSQL

WUZAPI_ADMIN_TOKEN=seu_token_admin_aqui
DB_USER=wuzapi
DB_PASSWORD=wuzapi
DB_NAME=wuzapi
DB_HOST=localhost
DB_PORT=5432
TZ=America/Sao_Paulo

Para SQLite

WUZAPI_ADMIN_TOKEN=seu_token_admin_aqui
TZ=America/Sao_Paulo

Execução

Por padrão, o serviço iniciará na porta 8080. Você pode alterar o comportamento com os seguintes parâmetros:

  • -address: define o endereço IP para vincular o servidor (padrão 0.0.0.0)
  • -port: define o número da porta (padrão 8080)
  • -logtype: formato para logs, console (padrão) ou json
  • -wadebug: habilita debug whatsmeow, níveis INFO ou DEBUG são suportados
  • -sslcertificate: Arquivo de Certificado SSL
  • -sslprivatekey: Arquivo de Chave Privada SSL
  • -skipmedia: Não baixar automaticamente mídia de mensagens recebidas
  • -osname: Nome do SO na conexão WhatsApp (padrão "Mac OS 10")
  • -admintoken: Token de Segurança para autorizar ações admin (listar/criar/remover usuários)
Exemplo:
./wuzapi -logtype json

Criando Usuários

Para abrir sessões, você primeiro precisa criar um usuário e definir um token de autenticação para ele. Você pode fazer isso fazendo login no Painel, ou usando a API diretamente:

curl -X POST http://localhost:8080/admin/users \
-H "Authorization: $WUZAPI_ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "João", "token": "Z1234ABCCXD"}'

Depois que os usuários são criados, você pode se comunicar com a API passando o cabeçalho Token como um método de autenticação simples. Você pode ter vários usuários (números diferentes) no mesmo servidor. Para cada usuário você precisará se Conectar ao WhatsApp e então escanear um QR Code ou Parear via número de telefone.

Recursos Web

O daemon também serve alguns arquivos web estáticos, úteis para desenvolvimento/teste que você pode carregar com seu navegador:

  • Uma referência da API Swagger em /api
  • Uma página web de exemplo para conectar e escanear QR codes em /login (onde você precisará passar ?token=1234ABCD)
  • Um painel de gerenciamento em /dashboard