WebChat no seu site
Coloque o assistente do Wagend no seu site com uma única linha de script, sem número de WhatsApp.
O WebChat é um widget de chat que o seu negócio cola no próprio site. Ele conversa com o mesmo bot do WhatsApp (mesmos horários, preços e reservas), mas sem número nem aprovação de terceiros: ideal para testar e para a vitrine do seu site.
Instalar
- No painel, como owner, publique o WebChat e informe os domínios permitidos (por exemplo
https://www.minhaloja.com.br). Você recebe uma chave publicávelwg_web_…. - Cole o snippet antes de
</body>:
<script src="https://wagend.app/widget.js" data-key="wg_web_…" defer></script>
Atributos opcionais: data-locale (pt, es ou en; por padrão usa o idioma do navegador) e data-api (origem da API, só para ambientes de teste). Cor, posição e título vêm da configuração do workspace.
Há uma página de demonstração em /demo/webchat onde você cola a chave e vê o widget funcionando.
O que o visitante vê
- Um botão flutuante que abre o chat; textos em português, espanhol ou inglês.
- Nome e telefone são opcionais e não são verificados: não identificam o visitante e não se unem a clientes existentes.
- A conversa vive na memória da página: ao recarregar, começa uma nova. Nada é gravado no navegador.
Segurança
- A chave publicável só abre conversas anônimas: não dá acesso ao painel, à API privada nem a dados de clientes. Ela pode ser revogada a qualquer momento (e rotacionada ao publicar de novo).
- O workspace vem sempre da chave; o widget nunca envia um
workspace_id. - Só os domínios permitidos podem usar o chat (CORS por workspace). Sem cookies.
- A verificação de
Originnão é autenticação. Só protege contra outros sites em um navegador; qualquer cliente que não seja um navegador (um script,curl) pode enviar oOriginque quiser. Por isso a chave publicável não é um segredo e a proteção real são os limites de uso, não a origem. - Tetos de custo: mensagens por conversa e por hora, mensagens diárias por workspace, conversas novas por hora e conexões ao vivo simultâneas. Ao esgotar, a API responde
429comRetry-Aftere o assistente não é chamado. Conversas inativas expiram sozinhas e são apagadas, inclusive o nome declarado do visitante. - Limites de uso por IP, por conversa e por workspace; mensagens de até 1000 caracteres.
- O texto do visitante é tratado como dado não confiável pelo assistente, e o widget mostra todo texto como texto puro (nunca HTML).
- O chat é apenas reativo: não envia lembretes nem mensagens proativas.
API
Gestão (owner, cookie de painel): GET|PUT|DELETE /v1/webchat-site. Públicos: GET /v1/public/webchat/config, POST /v1/public/webchat/sessions, GET|POST /v1/public/webchat/sessions/{id}/messages e GET /v1/public/webchat/sessions/{id}/events (SSE). Veja o contrato em packages/openapi/openapi.yaml.
Desativado por padrão (PUBLIC_WEBCHAT_ENABLED=false) até a revisão de segurança e a ativação explícita.