Visão Geral

WhatsMiau2 é uma plataforma completa de automação para WhatsApp, construída sobre a biblioteca WhatsMeow (Go) para comunicação confiável e escalável.

Repositório Oficial

Código fonte completo, issues, contribuições e releases.

automacoescomerciaisintegradas/whatsmiau2

🔧 Arquitetura

O sistema é composto por:

  • API Node.js - Interface REST e WebSocket (porta 3002)
  • Gateway Go - Comunicação WhatsApp via WhatsMeow (porta 3005)
  • Socket.IO - Eventos em tempo real
Base URL
Node.js API: http://localhost:3002
Go Gateway: http://localhost:3005

Quick Start

Siga estes passos para começar a usar a API em minutos:

Obter API Key

Acesse Configurações e copie sua API Key.

Conectar uma Instância

Use a página de Pareamento ou conecte via API.

Enviar sua primeira mensagem

cURL
curl -X POST http://localhost:3005/api/send-text \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer SUA_API_KEY" \
  -d '{
    "instance": "default",
    "to": "5588999999999",
    "text": "Olá! Esta é uma mensagem de teste 🐱"
  }'

Autenticação

Todas as requisições à API devem incluir a API Key no header de autorização:

Header de Autenticação
Authorization: Bearer SUA_API_KEY
apikey: SUA_API_KEY
Importante
Nunca exponha sua API Key em código client-side. Use sempre do servidor.

Enviar Mensagem de Texto

POST /api/whatsmiau2/send-text

Envia uma mensagem de texto para um número de WhatsApp.

Parâmetros

Campo Tipo Descrição
instance string Nome da instância conectada *
to string Número do destinatário (formato: 5588999999999) *
text string Conteúdo da mensagem *

Exemplo de Request

curl -X POST http://localhost:3002/api/whatsmiau2/send-text \
  -H "Content-Type: application/json" \
  -d '{
    "instance": "default",
    "to": "5588999999999",
    "text": "Olá! Mensagem enviada via API 🐱"
  }'
const response = await fetch('http://localhost:3002/api/whatsmiau2/send-text', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    instance: 'default',
    to: '5588999999999',
    text: 'Olá! Mensagem enviada via API 🐱'
  })
});

const data = await response.json();
console.log(data);
import requests

response = requests.post(
    'http://localhost:3002/api/whatsmiau2/send-text',
    json={
        'instance': 'default',
        'to': '5588999999999',
        'text': 'Olá! Mensagem enviada via API 🐱'
    }
)

print(response.json())

Resposta

{
  "success": true,
  "messageId": "3EB0F3C8A1B2C3D4E5F6",
  "timestamp": "2025-01-09T12:00:00.000Z"
}

Enviar Mídia

POST /api/whatsmiau2/send-media

Envia imagens, vídeos, áudios ou documentos.

Campo Tipo Descrição
instance string Nome da instância *
to string Número do destinatário *
mediaUrl string URL da mídia ou base64 *
mediaType string image | video | audio | document
caption string Legenda (opcional)

Exemplo

{
  "instance": "default",
  "to": "5588999999999",
  "mediaUrl": "https://exemplo.com/imagem.jpg",
  "mediaType": "image",
  "caption": "Confira esta imagem! 📷"
}

API de Leads (CRM)

GET /api/crm/leads

Retorna todos os leads do CRM.

{
  "success": true,
  "leads": [
    {
      "id": "1704790800000abc123",
      "nome": "João Silva",
      "whatsapp": "5588999999999",
      "email": "joao@email.com",
      "empresa": "Empresa ABC",
      "valor": 1500.00,
      "status": "negociacao",
      "tags": ["cliente", "vip"],
      "createdAt": "2025-01-09T12:00:00.000Z"
    }
  ]
}
POST /api/crm/leads/add

Adiciona um novo lead ao CRM.

Gerar Cobrança PIX

POST /api/mercadopago/pix

Gera uma cobrança PIX via Mercado Pago.

Campo Tipo Descrição
valor number Valor em reais *
descricao string Descrição do pagamento
leadId string ID do lead associado
expiracao number Minutos até expirar (default: 30)

Resposta

{
  "success": true,
  "data": {
    "id": "1234567890",
    "pixCode": "00020126580014br.gov.bcb.pix...",
    "pixQrCodeBase64": "data:image/png;base64,...",
    "valor": 97.00,
    "expiresAt": "2025-01-09T12:30:00.000Z"
  }
}

Webhooks

Configure webhooks para receber eventos em tempo real.

Webhook de Pagamento (Mercado Pago)

Configure esta URL no painel do Mercado Pago:

POST /api/webhook/mercadopago

Eventos Disponíveis

Evento Descrição
message.received Nova mensagem recebida
message.sent Mensagem enviada com sucesso
payment.approved Pagamento PIX aprovado
instance.connected Instância conectada ao WhatsApp
instance.disconnected Instância desconectada

Sobre o WhatsMeow

O WhatsMiau2 utiliza a biblioteca WhatsMeow para comunicação com o WhatsApp. WhatsMeow é uma implementação em Go do protocolo WhatsApp Web, oferecendo:

Características

  • Conexão estável e confiável
  • Suporte a múltiplas sessões
  • Envio de todos os tipos de mídia
  • Recebimento de mensagens em tempo real
  • Gerenciamento de grupos
  • Criptografia end-to-end