Pular para o conteúdo principal
O WaGo utiliza dois tipos de token:
TokenHeaderUtilizado para
Token de sessãotokenChamadas de API de sessão normais para uma conta do WhatsApp.
Token adminadmintokenCriar, listar, excluir e verificar tokens.
A maioria dos endpoints utiliza o token de sessão:
curl -H "token: YOUR_SESSION_TOKEN" \
  http://localhost:1337/session/status
Endpoints de administrador utilizam o admintoken:
curl -H "admintoken: YOUR_ADMIN_TOKEN" \
  http://localhost:1337/session/all

Token de sessão

Um token de sessão mapeia um consumidor da API para uma linha de sessão do WaGo. O token também é a forma como o WaGo encontra o cliente do WhatsApp conectado na memória. Envie-o como um header:
token: YOUR_SESSION_TOKEN
Alguns middlewares mais antigos também aceitam ?token=..., mas clientes em produção devem utilizar o header. Headers são mais fáceis de proteger em logs e proxies reversos.

Token admin

O token admin é destinado aos proprietários da implementação. Mantenha-o no lado do servidor. Não o coloque em código de navegador. As operações de administrador incluem:
  • POST /session/init
  • GET /session/all
  • POST /session/delete
  • POST /session/scanned
  • POST /server/license
  • GET /server/update

Aplicações de navegador

Se você construir uma aplicação web sobre o WaGo, não exponha recursos de administrador para usuários comuns. O fluxo padrão de navegador é:
  1. Seu backend autentica seu usuário.
  2. Seu backend decide qual token do WaGo pertence àquele usuário.
  3. Seu backend chama o WaGo, ou seu frontend chama o WaGo apenas com um token de sessão limitado.
  4. O token admin permanece apenas na sua infraestrutura.

Erros comuns de autenticação

ErroSignificadoCorreção
invalid tokenO WaGo não consegue encontrar um token de sessão correspondente.Verifique o header token exato.
No sessionO token existe, mas nenhum cliente WhatsApp está conectado na memória.Chame POST /session/connect.
not logged inA sessão não foi escaneada ou o WhatsApp desconectou.Busque /session/qr e escaneie novamente.
invalid admin tokenO admintoken não corresponde ao token admin configurado.Utilize o token admin da implementação apenas a partir de código de backend confiável.