Dicas Antibloqueio (WhatsApp Web)

Sugestões práticas para reduzir a chance de detecção automática ao usar automação via WhatsApp Web:

  • Evite repetir exatamente o mesmo texto; varie frases, chamadas e pontuação.
  • Espaçe os envios: use intervalos aleatórios e filas; não dispare em rajadas.
  • Não faça envios em massa. Divida lotes e distribua ao longo do tempo.
  • Alterne formatos: intercale textos com mídia leve (quando fizer sentido).
  • Simule contexto: responda a mensagens anteriores quando aplicável.
  • Evite links encurtados repetidos e mensagens excessivamente promocionais.
  • Respeite horários plausíveis e pausar ao detectar erros/bloqueios.
  • Revise destinatários e listas com frequência; remova números inativos.
Estas práticas são orientações gerais para uso de automação via WhatsApp Web e ajudam a manter baixo risco de bloqueios.
Endpoints e Referência
Carregando sua API Key...

Autenticação

Esta página documenta apenas os endpoints da API do Cliente (integração). Para usar os endpoints abaixo, envie sua API Key no header.

Headers

Content-Type: application/json api-key: SUA_API_KEY_AQUI

Enviar Mensagem

Utilize este endpoint para enviar mensagens de texto via WhatsApp automaticamente através do seu sistema. Aceita phone (contato) ou groupId (grupo).

POST /send-message

Body (JSON) — contato

{ "phone": "5511999999999", "message": "Olá! Esta é uma mensagem automática enviada via API." }

Body (JSON) — grupo

{ "groupId": "1203630234@g.us", "message": "Olá, grupo!" }

Exemplo de uso (cURL)

curl -X POST https://apiwhstp.com/send-message \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999", "message": "Teste de envio via API" }'

Respostas

  • 200 OK: Mensagem enviada com sucesso.
  • 400 Bad Request: Parâmetros inválidos ou telefone incorreto.
  • 401 Unauthorized: API Key não fornecida.
  • 403 Forbidden: API Key inválida.
  • 409 Conflict: Sessão do WhatsApp não conectada.
  • 500 Internal Server Error: Falha no processamento.

Exemplo de Sucesso

{ "ok": true, "to": "5511999999999", "message": "Olá! Esta é uma mensagem automática enviada via API." }

Exemplo de Erro

{ "error": "Sessão do WhatsApp não conectada" }

Enviar Mídia (Imagem, Vídeo, Áudio, Documento)

Envie arquivos de mídia fornecendo o conteúdo em Base64 no formato Data URI (ex.: data:image/png;base64,...). O envio é sempre realizado como anexo (inclusive áudio). Para enviar áudio como voz/PTT, use o endpoint /send-audio. Aceita phone ou groupId.

POST /send-media

Body (JSON) — contato

{ "phone": "5511999999999", "base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...", "caption": "Legenda (opcional)", "filename": "imagem.png" }

Body (JSON) — grupo

{ "groupId": "1203630234@g.us", "base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...", "caption": "Legenda (opcional)", "filename": "imagem.png" }

Exemplo de uso (cURL) — contato

curl -X POST https://apiwhstp.com/send-media \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999", "base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...", "caption": "Legenda (opcional)", "filename": "imagem.png" }'

Exemplo de uso (cURL) — grupo

curl -X POST https://apiwhstp.com/send-media \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "groupId": "1203630234@g.us", "base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...", "caption": "Legenda (opcional)", "filename": "imagem.png" }'

O campo base64 deve obrigatoriamente estar no formato Data URI (ex.: data:image/png;base64,...) para que o tipo de mídia seja identificado automaticamente. Limite de payload: 100MB.

Enviar Áudio como Voz/PTT

Envie um áudio no formato Data URI; o sistema valida o tipo e envia como voz/PTT. Aceita phone ou groupId.

POST /send-audio

Body (JSON) — contato

{ "phone": "5511999999999", "base64": "data:audio/ogg;base64,T2dnUwACAAAAAAAAAAD..." }

Body (JSON) — grupo

{ "groupId": "1203630234@g.us", "base64": "data:audio/ogg;base64,T2dnUwACAAAAAAAAAAD..." }

Exemplo de uso (cURL) — contato

curl -X POST https://apiwhstp.com/send-audio \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999", "base64": "data:audio/ogg;base64,T2dnUwACAAAAAAAAAAD..." }'

Exemplo de uso (cURL) — grupo

curl -X POST https://apiwhstp.com/send-audio \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "groupId": "1203630234@g.us", "base64": "data:audio/ogg;base64,T2dnUwACAAAAAAAAAAD..." }'

Requisitos: base64 deve iniciar com data:audio/. Se não for áudio, a API retorna erro 400. Limite de payload: 100MB. Este endpoint envia sempre como voz/PTT.

Atendimento Humano

Gerencie o status de atendimento humano para pausar o bot.

POST /attendance-open

Inicia o atendimento humano (pausa o bot).

Body (JSON)

{ "phone": "5511888888888", // Cliente "message": "Cliente solicitou atendimento" // Opcional: notifica equipe }
POST /attendance-close

Encerra o atendimento humano (retoma o bot).

Body (JSON)

{ "phone": "5511888888888" }

Enviar Localização

Envie uma localização geográfica (latitude e longitude). Aceita phone ou groupId.

POST /send-location

Body (JSON) — contato

{ "phone": "5511999999999", "latitude": "-23.550520", "longitude": "-46.633308", "description": "São Paulo - SP" }

Body (JSON) — grupo

{ "groupId": "1203630234@g.us", "latitude": "-23.550520", "longitude": "-46.633308", "description": "São Paulo - SP" }

Exemplo de uso (cURL) — contato

curl -X POST https://apiwhstp.com/send-location \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999", "latitude": "-23.550520", "longitude": "-46.633308", "description": "São Paulo - SP" }'

Exemplo de uso (cURL) — grupo

curl -X POST https://apiwhstp.com/send-location \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "groupId": "1203630234@g.us", "latitude": "-23.550520", "longitude": "-46.633308", "description": "São Paulo - SP" }'

Listar Grupos

Recupere a lista de grupos onde seu WhatsApp está inserido para obter os IDs. Suporta limite de resultados e usa cache com validade de aproximadamente 5 minutos para acelerar chamadas subsequentes.

GET /groups?limit=100

Exemplo de uso (cURL)

curl -X GET https://apiwhstp.com/groups?limit=100 \ -H "api-key: SUA_API_KEY_AQUI"
POST /groups/cache/clear

Limpa o cache de grupos associado à sua conta.

Exemplo de uso (cURL)

curl -X POST https://apiwhstp.com/groups/cache/clear \ -H "api-key: SUA_API_KEY_AQUI"

Resposta

{ "message": "Cache de grupos limpo com sucesso", "account": "5511...", "cleared": true }

Webhook — Configuração

Defina para onde as mensagens recebidas serão encaminhadas.

GET /api/webhook

Exemplo de uso (cURL)

curl -X GET https://apiwhstp.com/api/webhook \ -H "api-key: SUA_API_KEY_AQUI"
POST /api/webhook

Body

{ "url": "https://seu-endpoint", "authHeaderName": "API-KEY", "authHeaderValue": "valor" }

Exemplo de uso (cURL)

curl -X POST https://apiwhstp.com/api/webhook \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "url": "https://seu-endpoint", "authHeaderName": "API-KEY", "authHeaderValue": "valor" }'
DELETE /api/webhook

Exemplo de uso (cURL)

curl -X DELETE https://apiwhstp.com/api/webhook \ -H "api-key: SUA_API_KEY_AQUI"

Equipe (Staff)

Gerencie membros da sua equipe de atendimento. Ao adicionar/remover um número, o sistema envia uma mensagem automática para avisar o contato.

Autenticação: api-key.

GET /staff

Exemplo de uso (cURL)

curl -X GET https://apiwhstp.com/staff \ -H "api-key: SUA_API_KEY_AQUI"
POST /staff

Adiciona um número como staff e envia uma mensagem de confirmação via WhatsApp.

Body (JSON)

{ "phone": "5511999999999" }

Resposta

{ "ok": true, "phone": "5511999999999" }

Exemplo de uso (cURL)

curl -X POST https://apiwhstp.com/staff \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999" }'
  • 200 OK: Staff adicionado.
  • 400 Bad Request: phone inválido/ausente.
  • 401 Unauthorized: Não autenticado.
  • 409 Conflict: WhatsApp do cliente não está conectado.
  • 500 Internal Server Error: Falha ao enviar mensagem de cadastro.
DELETE /staff

Remove um número da staff. Se o WhatsApp estiver conectado, o contato recebe uma mensagem de remoção.

Body (JSON)

{ "phone": "5511999999999" }

Resposta

{ "ok": true, "phone": "5511999999999" }

Exemplo de uso (cURL)

curl -X DELETE https://apiwhstp.com/staff \ -H "Content-Type: application/json" \ -H "api-key: SUA_API_KEY_AQUI" \ -d '{ "phone": "5511999999999" }'
  • 200 OK: Staff removido.
  • 400 Bad Request: phone inválido/ausente.
  • 401 Unauthorized: Não autenticado.