{
  "name": "Reposteo Inteligente de Contenido Exitoso",
  "flow": [
    {
      "id": 1,
      "module": "builtin:BasicSchedule",
      "version": 1,
      "parameters": {
        "interval": "weekly",
        "day": "sunday",
        "time": "10:00"
      },
      "mapper": {},
      "metadata": {
        "designer": { "x": 0, "y": 0 },
        "restore": {},
        "expect": []
      }
    },
    {
      "id": 2,
      "module": "google-sheets:searchRows",
      "version": 2,
      "parameters": {
        "spreadsheetId": "{{SPREADSHEET_METRICAS_ID}}",
        "sheetId": "Historial Posts",
        "sort": "F:F desc"
      },
      "mapper": {},
      "filter": {
        "name": "Alto engagement y más de 30 días",
        "conditions": [
          { "a": "{{2.engagement}}", "o": "number:greaterThan", "b": "{{UMBRAL_ENGAGEMENT}}" },
          { "a": "{{math.round((now - parseDate(2.fechaPublicacion; \"DD/MM/YYYY\")) / 86400000)}}", "o": "number:greaterThan", "b": "30" },
          { "a": "{{2.reposteado}}", "o": "text:notEqual", "b": "Sí" }
        ]
      },
      "metadata": {
        "designer": { "x": 300, "y": 0 },
        "restore": {
          "spreadsheetId": { "label": "Métricas de Posts" }
        },
        "expect": [
          { "name": "spreadsheetId", "type": "text", "label": "Spreadsheet ID" }
        ]
      }
    },
    {
      "id": 3,
      "module": "openai:createChatCompletion",
      "version": 1,
      "parameters": {
        "apiKey": "{{OPENAI_API_KEY}}",
        "model": "gpt-4o-mini",
        "temperature": 0.8,
        "maxTokens": 500
      },
      "mapper": {
        "messages": [
          {
            "role": "system",
            "content": "Reescribe el siguiente texto de una publicación de redes sociales para que sea diferente pero mantenga el mismo mensaje y tono. No cambies los datos o cifras si los hay. Agrega un emoji relevante al inicio. Mantén la longitud similar."
          },
          {
            "role": "user",
            "content": "{{2.textoOriginal}}"
          }
        ]
      },
      "metadata": {
        "designer": { "x": 600, "y": 0 },
        "restore": {},
        "expect": [
          { "name": "apiKey", "type": "text", "label": "API Key" },
          { "name": "model", "type": "select", "label": "Model" }
        ]
      }
    },
    {
      "id": 4,
      "module": "google-sheets:addRow",
      "version": 2,
      "parameters": {
        "spreadsheetId": "{{SPREADSHEET_CALENDARIO_ID}}",
        "sheetId": "Cola de Reposteo",
        "includeHeaders": true
      },
      "mapper": {
        "values": {
          "0": "{{formatDate(addDays(now; random(3; 14)); \"DD/MM/YYYY\")}}",
          "1": "{{3.choices[0].message.content}}",
          "2": "{{2.imagenUrl}}",
          "3": "{{2.plataforma}}",
          "4": "{{2.hashtags}}",
          "5": "Programado",
          "6": "Repost de: {{2.postId}}"
        }
      },
      "metadata": {
        "designer": { "x": 900, "y": 0 },
        "restore": {
          "spreadsheetId": { "label": "Calendario Editorial" }
        },
        "expect": [
          { "name": "spreadsheetId", "type": "text", "label": "Spreadsheet ID" }
        ]
      }
    },
    {
      "id": 5,
      "module": "google-sheets:updateRow",
      "version": 2,
      "parameters": {
        "spreadsheetId": "{{SPREADSHEET_METRICAS_ID}}",
        "sheetId": "Historial Posts",
        "rowId": "{{2.__ROW_NUMBER__}}"
      },
      "mapper": {
        "values": {
          "8": "Sí",
          "9": "{{formatDate(now; \"DD/MM/YYYY\")}}"
        }
      },
      "metadata": {
        "designer": { "x": 1200, "y": 0 },
        "restore": {},
        "expect": [
          { "name": "spreadsheetId", "type": "text", "label": "Spreadsheet ID" }
        ]
      }
    }
  ],
  "metadata": {
    "instant": false,
    "version": 1,
    "scenario": {
      "roundtrips": 1,
      "maxErrors": 3,
      "autoCommit": true,
      "autoCommitTriggerLast": true,
      "sequential": true
    },
    "designer": {
      "orphans": []
    },
    "zone": "us1.make.com"
  }
}