Skip to main content
Há dois cenários, e eles são bem diferentes:
  • Enviar uma mensagem de WhatsApp a partir de um fluxo do Typebot: funciona direto, com o bloco de requisição HTTP chamando o send-text.
  • Receber mensagens do WhatsApp dentro de um fluxo do Typebot: exige um intermediário, porque o Typebot não recebe webhooks arbitrários.
Base das rotas: https://api.wabox.me/instances/{instance_id}/token/{token} (credenciais no dashboard › instância). O header Client-Token só é necessário se estiver ativado no workspace (Client-Token).

Enviar mensagem a partir do fluxo

Use o bloco de requisição HTTP do Typebot — dependendo da versão ele aparece como HTTP request ou Webhook no painel de blocos de integração; é o mesmo bloco.
1

Colete o telefone em uma variável

Antes do bloco HTTP, tenha o número em uma variável do fluxo (por exemplo {{Telefone}}), só dígitos com DDI e DDD: 5511988887777. O Typebot tem um bloco de entrada de telefone; remova +, espaços e traços antes de enviar, ou use phone-exists para validar — veja Identificadores.
2

Configure o bloco HTTP

  • Método: POST
  • URL: https://api.wabox.me/instances/{instance_id}/token/{token}/send-text
  • Headers: Content-Type: application/json e, se ativado, Client-Token
  • Body (JSON), usando as variáveis do fluxo:
Execute o teste do bloco para conferir a resposta.
3

Salve o id da mensagem (opcional)

A resposta é:
Na opção do bloco que salva campos da resposta em variáveis, aponte message_id (ou id, que é alias) para uma variável se você for cruzar com o webhook delivery depois. status: "queued" indica que a mensagem entrou na fila; o resultado do envio chega no delivery.
Mensagens com botões e listas (send-button-list, send-option-list) também podem ser disparadas do mesmo bloco, mas nem todo cliente do WhatsApp renderiza esses formatos. Confira O que renderiza onde antes de usar.

Receber mensagens do WhatsApp no Typebot

O Typebot executa fluxos a partir da própria interface de chat (ou da integração nativa dele com a API oficial do WhatsApp). Ele não expõe uma URL genérica em que o Wabox possa postar o webhook received e ver o fluxo avançar. Para conversar com um Typebot via Wabox, você precisa de um intermediário que faça três coisas:
  1. Receber o webhook received do Wabox.
  2. Falar com a API de chat do Typebot (os endpoints que iniciam uma sessão e continuam uma sessão existente com a mensagem do usuário), mantendo a sessão por telefone.
  3. Enviar cada resposta do Typebot de volta pelo send-text (ou pela rota do tipo de conteúdo correspondente).
Esse intermediário pode ser um workflow no n8n ou no Make, ou um backend seu (integração HTTP genérica).
1

Configure o webhook received

Aponte received_url da instância para o intermediário:
Responda 2xx em até 10 s e ignore eventos com from_me: true ou sem text — veja Webhook received.
2

Mapeie telefone → sessão

Guarde, por phone, o id da sessão devolvido pelo Typebot ao iniciar o chat. Na próxima mensagem daquele número, continue a sessão em vez de iniciar outra. Sessões expiram no Typebot; ao receber erro de sessão inexistente, inicie uma nova.
3

Devolva as respostas pelo Wabox

A API de chat do Typebot responde com a lista de mensagens do bot (texto, imagem, etc.) e, quando o fluxo espera uma entrada, o tipo de entrada esperado. Para cada mensagem de texto, chame send-text com o phone do cliente; para imagens, send-image, e assim por diante. Se o fluxo pedir uma escolha entre opções, você pode mandá-las como texto numerado ou como send-option-list, e mapear a resposta do cliente de volta para a opção.
Cada mensagem do cliente vira uma chamada ao Typebot e uma ou mais chamadas de envio. Trate o 429 da API (com Retry-After) e o 409 instance_not_connected no intermediário — veja Rate limit e erros. E deduplique por event_id: em caso de reentrega, o mesmo evento chega mais de uma vez.