{
  "name": "Livelo - disparo",
  "nodes": [
    {
      "parameters": {
        "multipleMethods": true,
        "httpMethod": [
          "POST"
        ],
        "path": "d2ed5def-e42e-4562-b962-b51b6b42bb6a",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2.1,
      "position": [
        -176,
        0
      ],
      "id": "05ecf2eb-f593-478f-8146-84dd7c183710",
      "name": "Webhook"
    },
    {
      "parameters": {
        "language": "pythonNative",
        "pythonCode": "output = []\n\nfor item in _items:\n    nodes = item[\"json\"][\"body\"][\"promocoes\"]\n\n    for parceiro in nodes:\n        output.append({\n            \"json\": parceiro\n        })\n\nreturn output\n"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        208,
        0
      ],
      "id": "c26ce9b5-9751-481a-b32f-777d52233a79",
      "name": "Code in Python (Native)"
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "1AzIXvC8QfqiU7LrNWM_gGwnZoyy5DQxkDMvnhIBQFo4",
          "mode": "list",
          "cachedResultName": "Livelo",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1AzIXvC8QfqiU7LrNWM_gGwnZoyy5DQxkDMvnhIBQFo4/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "P\u00e1gina1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1AzIXvC8QfqiU7LrNWM_gGwnZoyy5DQxkDMvnhIBQFo4/edit#gid=0"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "parceiro": "={{ $json.parceiro }}",
            "pontos_texto": "={{ $json.pontos_texto }}",
            "pontos_numericos": "={{ $json.pontos_numericos }}",
            "moeda": "={{ $json.moeda }}",
            "Data da minera\u00e7\u00e3o": "={{ $now }}"
          },
          "matchingColumns": [],
          "schema": [
            {
              "id": "parceiro",
              "displayName": "parceiro",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "pontos_texto",
              "displayName": "pontos_texto",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "pontos_numericos",
              "displayName": "pontos_numericos",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "moeda",
              "displayName": "moeda",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Data da minera\u00e7\u00e3o",
              "displayName": "Data da minera\u00e7\u00e3o",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        416,
        0
      ],
      "id": "b0bc815b-ad4d-462c-8763-012d24f84521",
      "name": "Append row in sheet",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 3
          },
          "conditions": [
            {
              "id": "80081fde-4f88-4936-b64a-845aa7afed33",
              "leftValue": "={{ $json.pontos_numericos }}",
              "rightValue": 3,
              "operator": {
                "type": "number",
                "operation": "gt"
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.filter",
      "typeVersion": 2.3,
      "position": [
        624,
        0
      ],
      "id": "5f5591ec-a738-4cb6-9862-2eaffa534ad7",
      "name": "Filter"
    },
    {
      "parameters": {
        "resource": "messages-api",
        "instanceName": "oferta",
        "remoteJid": "120363426158574717@g.us",
        "messageText": "={{ $json.content.parts[0].text }}",
        "options_message": {}
      },
      "type": "n8n-nodes-evolution-api.evolutionApi",
      "typeVersion": 1,
      "position": [
        1488,
        -16
      ],
      "id": "b27a0a67-0963-4fa1-a30c-4637f35a8eda",
      "name": "Enviar texto",
      "credentials": {
        "evolutionApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "modelId": {
          "__rl": true,
          "value": "models/gemini-2.5-flash",
          "mode": "list",
          "cachedResultName": "models/gemini-2.5-flash"
        },
        "messages": {
          "values": [
            {
              "content": "=Voc\u00ea \u00e9 um especialista em programas de fidelidade. Sua tarefa \u00e9 criar um boletim di\u00e1rio de ofertas para um canal de WhatsApp.\n\nESTRUTURA OBRIGAT\u00d3RIA:\nA primeira linha da mensagem deve ser exatamente: 'Hoje as ofertas do dia [COLOQUE O DIA DE HOJE] s\u00e3o:'\n\nDATA: {{ $now }} - FORMATE\n\nREGRAS DE ORGANIZA\u00c7\u00c3O:\n\nOrganize os parceiros por categorias l\u00f3gicas (Varejo, Viagem, Sa\u00fade, etc.).\nOrganize os parceiros pelo maior valor de pontos\nUse emojis tem\u00e1ticos para cada categoria.\n\nListe os parceiros em formato de lista (bullet points).\n\nUse Negrito para nomes de parceiros e categorias.\n\nRemova qualquer explica\u00e7\u00e3o sobre convers\u00e3o de d\u00f3lar ou introdu\u00e7\u00e3o longa. V\u00e1 direto para as ofertas.\n\nLISTA DE PARCEIROS PARA PROCESSAR:\n\"{{ $json.resultado }}\""
            }
          ]
        },
        "builtInTools": {
          "googleSearch": true
        },
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "typeVersion": 1.1,
      "position": [
        1088,
        -16
      ],
      "id": "b0f74c02-0503-4fb3-b10c-cff5ceb88c35",
      "name": "Message a model",
      "credentials": {
        "googlePalmApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "language": "pythonNative",
        "pythonCode": "return [{\"resultado\": \" | \".join([f\"{i['json']['parceiro']} ({i['json']['pontos_texto']})\" for i in _items])}]"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        832,
        0
      ],
      "id": "a2f31e83-fc09-4073-bc11-34e94bd3b3eb",
      "name": "Code in Python (Native)1"
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Code in Python (Native)",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Code in Python (Native)": {
      "main": [
        [
          {
            "node": "Append row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append row in sheet": {
      "main": [
        [
          {
            "node": "Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter": {
      "main": [
        [
          {
            "node": "Code in Python (Native)1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Message a model": {
      "main": [
        [
          {
            "node": "Enviar texto",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in Python (Native)1": {
      "main": [
        [
          {
            "node": "Message a model",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1",
    "availableInMCP": false,
    "timeSavedMode": "fixed",
    "timezone": "America/Sao_Paulo",
    "callerPolicy": "workflowsFromSameOwner"
  },
  "versionId": "2888601b-315e-40a9-9ea3-31e555a858ab",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "kBsAMD2vXPbtdux5",
  "tags": []
}