Disparar um flow
Dispara a execução de um flow para um número de WhatsApp.
POST
https://external-api.lip7.com.br/api/external/flows/{id}/triggerEscopo
flows:triggerAssíncrono — responde 202 com requestIdPor ser um disparo, é assíncrono: responde 202 com requestId. Acompanhe em /usage/status/{requestId}.
Body
tostringobrigatórioNúmero de WhatsApp do destinatário (DDI 55).
userMessagestringopcionalMensagem inicial que entra no contexto do flow.
variablesobjectopcionalVariáveis injetadas na execução do flow.
O flow precisa estar ACTIVE
Apenas flows com status ACTIVE podem ser disparados; caso contrário a API retorna 400. O número passa pela mesma validação de WhatsApp das demais rotas.
Erros comuns
| Código | Causa |
|---|---|
400 | to ausente, número inválido ou flow que não está ACTIVE |
401 | API key inválida |
403 | Escopo insuficiente |
404 | Flow não encontrado |
Requisição
curl -X POST "https://external-api.lip7.com.br/api/external/flows/flow_123/trigger" \
-H "Content-Type: application/json" \
-H "x-api-key: lip_SUA_CHAVE" \
-d '{
"to": "5511999999999",
"userMessage": "Quero saber sobre o plano Pro",
"variables": { "origem": "site", "plano": "pro" }
}'const response = await fetch(
'https://external-api.lip7.com.br/api/external/flows/flow_123/trigger',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'lip_SUA_CHAVE',
},
body: JSON.stringify({
to: '5511999999999',
userMessage: 'Quero saber sobre o plano Pro',
variables: { origem: 'site', plano: 'pro' },
}),
}
);
const data = await response.json();Resposta
{
"success": true,
"data": {
"requestId": "req_...",
"flowId": "flow_123",
"flowName": "Boas-vindas",
"to": "5511999999999",
"status": "enqueued"
}
}{
"success": false,
"error": "Flow não está ativo"
}