{
  "format": "columba-flow",
  "formatVersion": 1,
  "app": "Columba · Blog",
  "flow": {
    "name": "Anúncio do Instagram — dúvidas e vendas",
    "description": "Responde quem chega pelo anúncio de clique para o WhatsApp: abre o negócio no funil, oferece um menu com botões, a IA tira as dúvidas com a Base do Assistente e passa para o time de vendas quando o cliente pede. O lembrete sai em 23 h, ainda dentro da janela de 24 h e da janela grátis do anúncio.",
    "triggerType": "trigger_keyword",
    "triggerConfig": {
      "label": "Mensagem do anúncio",
      "keywords": "vi o anúncio\nvi o anuncio\nvim pelo anúncio\nvim pelo anuncio",
      "matchMode": "contains",
      "allowedChannels": ["whatsapp"]
    },
    "priority": 10,
    "nodes": [
      {
        "id": "gatilho",
        "type": "trigger_keyword",
        "position": { "x": 0, "y": 240 },
        "data": {
          "label": "Mensagem do anúncio",
          "keywords": "vi o anúncio\nvi o anuncio\nvim pelo anúncio\nvim pelo anuncio",
          "matchMode": "contains",
          "allowedChannels": ["whatsapp"]
        }
      },
      {
        "id": "nota",
        "type": "note_sticky",
        "position": { "x": 0, "y": 480 },
        "data": {
          "label": "Antes de publicar",
          "text": "Antes de publicar:\n1. No gatilho, use a mesma frase da mensagem pré-preenchida do seu anúncio.\n2. No nó da IA, troque [NOME DA EMPRESA] e revise as regras.\n3. Em Passar para Vendas, escolha o time ou a pessoa.\n4. Confira se a Base do Assistente tem preços, prazos, entrega e formas de pagamento.\nO fluxo tem prioridade 10: roda antes das automações de boas-vindas."
        }
      },
      {
        "id": "negocio",
        "type": "integration_create_deal",
        "position": { "x": 320, "y": 240 },
        "data": {
          "label": "Abre o negócio no funil",
          "dealTitle": "{{contact.name}} · Anúncio Instagram"
        }
      },
      {
        "id": "menu",
        "type": "action_send_interactive",
        "position": { "x": 640, "y": 240 },
        "data": {
          "label": "Menu do anúncio",
          "bodyText": "Oi, {{contact.name}}! Que bom ter você aqui 😊\nSobre o que você quer saber?",
          "footer": "Ou escreva a sua dúvida aqui mesmo",
          "options": [
            { "id": "precos", "title": "Preços e pagamento" },
            { "id": "como_funciona", "title": "Como funciona" },
            { "id": "vendedor", "title": "Falar com vendedor" }
          ],
          "variableName": "interesse",
          "timeoutMinutes": 1380
        }
      },
      {
        "id": "ia",
        "type": "action_ai_response",
        "position": { "x": 960, "y": 60 },
        "data": {
          "label": "IA tira as dúvidas",
          "systemPrompt": "# Papel\nVocê é o assistente de vendas da [NOME DA EMPRESA] no WhatsApp. Quem fala com você acabou de chegar por um anúncio no Instagram e quer tirar dúvidas antes de comprar.\n\n# Tom de voz\n- Simpático e direto, tratando o cliente por \"você\".\n- No máximo 3 frases por resposta, em uma mensagem só. Nada de listas longas.\n\n# O que fazer\n- Responda com base na Base do Assistente: preços, prazos, entrega, formas de pagamento e trocas.\n- Se o cliente tocou em \"Preços e pagamento\" ou \"Como funciona\", responda sobre esse assunto.\n- Termine cada resposta com uma pergunta simples que leve à compra, como \"Quer que eu separe o seu?\".\n- Quando souber o produto e o valor, registre no negócio com update_deal. Guarde o que o cliente contar com save_information.\n\n# Regras\n- Nunca invente preço, prazo, estoque ou promoção. Se não estiver na Base, diga que vai confirmar com a equipe e transfira.\n- Não peça dados que o cliente não precisa dar agora (CPF, endereço completo) — isso fica para o vendedor.\n\n# Quando transferir para um humano\n- O cliente pedir para falar com uma pessoa ou vendedor.\n- O cliente quiser fechar a compra, negociar preço ou pedir condição especial.\n- Reclamação ou assunto fora de vendas.\nAntes de transferir, avise: \"Vou chamar alguém do nosso time para continuar com você.\"",
          "model": "claude-haiku-4-5",
          "temperature": 0.4,
          "ragEnabled": true,
          "toolsEnabled": true,
          "enabledTools": ["transfer_to_human", "update_deal", "save_information"],
          "historyTurns": 10,
          "responseDelaySeconds": 0
        }
      },
      {
        "id": "espera",
        "type": "logic_wait_for_reply",
        "position": { "x": 1280, "y": 60 },
        "data": {
          "label": "Espera o cliente",
          "timeoutMinutes": 1380
        }
      },
      {
        "id": "limite",
        "type": "logic_loop_guard",
        "position": { "x": 1600, "y": 0 },
        "data": {
          "label": "Conversa andando?",
          "mode": "ai_judge",
          "judgeEvery": 5,
          "hardLimit": 20
        }
      },
      {
        "id": "lembrete",
        "type": "action_send_text",
        "position": { "x": 1280, "y": 480 },
        "data": {
          "label": "Lembrete (23 h)",
          "message": "Oi, {{contact.name}}! Passando para saber se ficou alguma dúvida. Se quiser, já deixo o seu pedido encaminhado — é só responder por aqui."
        }
      },
      {
        "id": "espera_lembrete",
        "type": "logic_wait_for_reply",
        "position": { "x": 1600, "y": 480 },
        "data": {
          "label": "Espera depois do lembrete",
          "timeoutMinutes": 1440
        }
      },
      {
        "id": "aviso_frio",
        "type": "integration_notify_team",
        "position": { "x": 1920, "y": 600 },
        "data": {
          "label": "Avisa: lead esfriou",
          "notificationMessage": "Lead do anúncio sem resposta há 2 dias: {{contact.name}}. A janela grátis do anúncio ainda pode estar aberta — um modelo da Meta enviado agora não é cobrado.",
          "priority": "low"
        }
      },
      {
        "id": "aviso_vendas",
        "type": "integration_notify_team",
        "position": { "x": 1920, "y": 240 },
        "data": {
          "label": "Avisa o time de vendas",
          "notificationMessage": "Lead do anúncio do Instagram quer falar com um vendedor: {{contact.name}}.",
          "priority": "high"
        }
      },
      {
        "id": "transferir",
        "type": "integration_transfer_human",
        "position": { "x": 2240, "y": 240 },
        "data": {
          "label": "Passar para Vendas"
        }
      }
    ],
    "edges": [
      { "id": "e1", "source": "gatilho", "target": "negocio" },
      { "id": "e2", "source": "negocio", "target": "menu" },
      { "id": "e3", "source": "menu", "target": "ia", "sourceHandle": "precos", "label": "Preços" },
      { "id": "e4", "source": "menu", "target": "ia", "sourceHandle": "como_funciona", "label": "Como funciona" },
      { "id": "e5", "source": "menu", "target": "ia", "sourceHandle": "other", "label": "Escreveu a dúvida" },
      { "id": "e6", "source": "menu", "target": "aviso_vendas", "sourceHandle": "vendedor", "label": "Vendedor" },
      { "id": "e7", "source": "menu", "target": "lembrete", "sourceHandle": "timeout", "label": "Sem resposta" },
      { "id": "e8", "source": "ia", "target": "espera" },
      { "id": "e9", "source": "espera", "target": "limite", "sourceHandle": "true", "label": "Respondeu" },
      { "id": "e10", "source": "espera", "target": "lembrete", "sourceHandle": "false", "label": "23 h sem resposta" },
      { "id": "e11", "source": "limite", "target": "ia", "sourceHandle": "true", "label": "Continua" },
      { "id": "e12", "source": "limite", "target": "aviso_vendas", "sourceHandle": "false", "label": "Travou" },
      { "id": "e13", "source": "lembrete", "target": "espera_lembrete" },
      { "id": "e14", "source": "espera_lembrete", "target": "limite", "sourceHandle": "true", "label": "Respondeu" },
      { "id": "e15", "source": "espera_lembrete", "target": "aviso_frio", "sourceHandle": "false", "label": "Sumiu" },
      { "id": "e16", "source": "aviso_vendas", "target": "transferir" }
    ]
  }
}
