startChat / continueChat) e as respostas voltam para o WhatsApp, incluindo texto, mídia e botões/listas nativos.
Como funciona
- Você cria um bot com
POST /api/typebot/set/:instance(ou inline, na criação da instância). - A cada mensagem recebida no WhatsApp, a RyzeAPI escolhe o bot pelo trigger e envia o texto ao fluxo do Typebot.
- As respostas do fluxo voltam para a RyzeAPI e são entregues no WhatsApp.
- A sessão fica persistida no servidor: reiniciar o serviço não perde a conversa em andamento.
Uma instância pode ter vários bots ao mesmo tempo, roteados por trigger. Um bot
all funciona como catch-all (qualquer mensagem inicia); bots keyword só disparam quando a mensagem casa com o operador/valor configurado.noStartFromMe) e manter a conversa aberta ao terminar o fluxo (keepOpen, status held).
Botões e Pix pela marcação no texto
Nativamente o Typebot oferece só o botão de resposta (o nó de opções). Para enviar os outros botões do WhatsApp (link, ligação, copiar) e a mensagem de Pix, escreva uma marcação dentro de um balão de texto comum do seu fluxo. A RyzeAPI reconhece a marcação, retira ela do texto e envia a mensagem interativa correspondente; o texto que sobra no balão vira o corpo da mensagem.
Botões de resposta com um texto de apoio:
O WhatsApp aceita no máximo 3 botões de resposta/link/ligação/copiar por mensagem. Se você escrever mais de 3, eles são enviados em blocos de 3. O Pix é uma mensagem própria, então sai sempre separado dos outros botões. O rótulo depois do
| no [pix:...] não altera o botão de pagamento (o WhatsApp usa o rótulo nativo); o texto exibido acima do Pix é o restante do balão.Padrão de resposta
Todos os endpoints do Typebot seguem o envelope padrão da API v2:<conteúdo> varia por endpoint (bot, bots, sessions); meta aparece quando há contadores (total, deleted). Em caso de erro, o formato é { "success": false, "error": { "message": "...", "code": "...?" } }.
Endpoints de gerenciamento
Cadastrar bot
POST /api/typebot/set/:instance, cria um bot novo (somente criação).Editar bot
PATCH /api/typebot/update/:instance, edição parcial de um bot existente.Listar bots
GET /api/typebot/list/:instance?botId=, todos os bots (ou um) + status da integração.Remover bot
DELETE /api/typebot/delete/:instance?botId=, remove um bot ou todos.Iniciar fluxo
POST /api/typebot/start/:instance, dispara um fluxo manualmente para um número.Sessões ao vivo
GET/POST /api/typebot/sessions/:instance, lista e controla as conversas em andamento.Enriquecimento e sessões
Cada bot retornado porGET /api/typebot/list/:instance vem enriquecido com active_sessions (nº de conversas abertas + pausadas) e last_activity_at (última atividade em RFC3339, ausente se nunca houve). Para inspecionar e controlar cada conversa individualmente, use /api/typebot/sessions/:instance.
Roteamento por trigger
Cada mensagem recebida é avaliada contra os bots habilitados, na seguinte ordem de prioridade (uma palavra-chave específica vence o catch-all):all habilitado; bots keyword são únicos por combinação de (operator, value).
Ativação inline na criação da instância
Um bot pode ser configurado junto com a criação da instância, sem precisar chamarset separadamente. Basta enviar o bloco typebot* no body de POST /api/instance/new:
typebot retorna com status: "error" e error: "<mensagem>". Você pode então chamar POST /api/typebot/set/:instance para configurar o bot sem recriar a instância.
Modelo de dados
O servidor persiste os dados em duas tabelas:
Sempre que um bot é criado, editado ou removido, a RyzeAPI (re)ativa a integração da instância. Quando o último bot é removido, a integração é desativada e o vínculo local é apagado. Os campos
active_sessions e last_activity_at não são persistidos: são calculados a partir das sessões ao vivo no momento da leitura.
Próximos passos
Cadastrar um bot
Configure o primeiro bot com
POST /api/typebot/set/:instance.Erros do Typebot
Tabela de mapeamento dos status HTTP e mensagens da integração.