Entrega automatizada semanal de informes SEO con insights de GPT-4 y Slack

Avanzado

Este es unMarket Research, AI Summarizationflujo de automatización del dominio deautomatización que contiene 42 nodos.Utiliza principalmente nodos como Set, Code, Merge, Slack, SplitOut. Automatizar informes semanales de SEO con insights de GPT-4 y entrega en Slack

Requisitos previos
  • Bot Token de Slack o URL de Webhook
  • Pueden requerirse credenciales de autenticación para la API de destino
  • Clave de API de OpenAI
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "name": "Automate Weekly SEO Report with GPT-4 Insights and Slack Delivery",
  "nodes": [
    {
      "id": "43d47434-1125-439d-ba6a-cab092db3f46",
      "name": "Configuración",
      "type": "n8n-nodes-base.set",
      "position": [
        -1380,
        520
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "9941e108-1e6c-4050-8401-9e6125a847de",
              "name": "site_url",
              "type": "string",
              "value": "sc-domain:your-domain.com"
            },
            {
              "id": "06978aeb-e021-4b59-8a42-4225857d7778",
              "name": "date_start",
              "type": "string",
              "value": "={{ $now.minus(1,'month').format('yyyy-LL-dd') }}"
            },
            {
              "id": "780c04e5-5e2d-4a0c-9629-8d7ea7a4be8c",
              "name": "date_end",
              "type": "string",
              "value": "={{ $now.format('yyyy-LL-dd') }}"
            },
            {
              "id": "66e78b2a-965e-4e44-a88b-d31338175fe2",
              "name": "date_prev_month_start",
              "type": "string",
              "value": "={{ $now.minus(2,'month').minus(1,'day').format('yyyy-LL-dd') }}"
            },
            {
              "id": "332eae7c-0318-4cdc-a924-0f5b1ed22dbf",
              "name": "date_prev_month_end",
              "type": "string",
              "value": "={{ $now.minus(1,'month').minus(1,'day').format('yyyy-LL-dd') }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "448882ac-8fe0-45fb-b86f-7d019f9268ac",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2120,
        420
      ],
      "parameters": {
        "width": 420,
        "height": 560,
        "content": "# Welcome to Weekly SEO Report Workflow!\n\n**This workflow has the following sequence:**\n1. Time trigger (e.g. every Monday at 8 a.m.)\n2. Retrieval of Google Search Console data from the last month and previous month (or any period you want)\n3. Format it and generate AI insight of the data\n4. Transform it into a PDF report using pdforge (Using the pre-made SEO Report Template)\n5. Sending the report as a Slack Message (You can change it to send an e-mail, whatsapp or telegram message)\n\n\n**The following accesses are required for the workflow:**\n- Google Oauth2 (via Google Console API): [Documentation](https://docs.n8n.io/integrations/builtin/credentials/google/oauth-generic)\n- pdforge account: [Create here](https://app.pdforge.com/auth/sign-up)\n- AI API access (e.g. via OpenAI, Anthropic, Google or Ollama)\n- Slack Connection: [Documentation](https://docs.n8n.io/integrations/builtin/credentials/slack)\n\n\nYou can contact me via LinkedIn, if you have any questions: https://www.linkedin.com/in/marceloamiranda"
      },
      "typeVersion": 1
    },
    {
      "id": "319de69b-177d-4d42-b4cb-3e35ba5e80dc",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1440,
        420
      ],
      "parameters": {
        "color": 4,
        "width": 220,
        "height": 320,
        "content": "**Here you'll configure:**\n- Site URL\n- Date range"
      },
      "typeVersion": 1
    },
    {
      "id": "0b8f7ebe-4629-405a-84ff-0dcf9334f272",
      "name": "Pdforge",
      "type": "n8n-nodes-pdforge.pdforge",
      "position": [
        600,
        520
      ],
      "parameters": {
        "options": {},
        "variables": "={{ JSON.stringify($json) }}",
        "templateId": "template_seo_report"
      },
      "credentials": {
        "pdforgeApi": {
          "id": "fFuvCIsBkIHHd0ct",
          "name": "Pdforge account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c744768d-3ffc-4ec8-8526-62992e9cdea0",
      "name": "Descargar binario",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        820,
        520
      ],
      "parameters": {
        "url": "={{ $json.signedUrl }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "1f0baeea-eb35-4dff-b9c4-1b4a95b53121",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -40,
        700
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "gpt-4.1"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "3hJLI2ahkB4Zjnwd",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "41fa4fa0-72a7-4402-b1ae-73615d55b3ec",
      "name": "Generar variables",
      "type": "n8n-nodes-base.code",
      "position": [
        380,
        520
      ],
      "parameters": {
        "mode": "runOnceForEachItem",
        "jsCode": "const base = $(\"Format data\").first().json\n\nreturn {\n      ...base,                                           \n      insights_content:     $json.output,\n    };\n"
      },
      "typeVersion": 2
    },
    {
      "id": "639a05bc-e87f-4d1b-afb7-d95a3926676c",
      "name": "Slack - Enviar mensaje con archivo",
      "type": "n8n-nodes-base.slack",
      "position": [
        1040,
        520
      ],
      "webhookId": "12b44f56-30b4-4278-ad22-32bcb952006e",
      "parameters": {
        "options": {
          "fileName": "=SEO Report - {{ $('Generate variables').first().json.report_date }}",
          "channelId": "C093723CAN6",
          "initialComment": "📊 *Here's your Weekly SEO Report*"
        },
        "resource": "file",
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "ombwJbyognfRtMoj",
          "name": "Slack account"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "16032072-de5c-40c5-b8c3-52c6575e1157",
      "name": "Semanalmente los lunes a las 8 a.m.",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1600,
        520
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "weeks",
              "triggerAtDay": [
                1
              ],
              "triggerAtHour": 8
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "94ab0f9b-2c78-4e41-8388-2c707b4965ca",
      "name": "HTTP Request - Google Search Console - Consulta - Mes anterior",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        1120
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_prev_month_start }}\",\n  \"endDate\": \"{{ $json.date_prev_month_end }}\",\n  \"dimensions\": [\"query\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "ef74bcb0-c187-4135-ac30-fe6ec31723bf",
      "name": "HTTP Request - Google Search Console - Página - Mes anterior",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        1320
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_prev_month_start }}\",\n  \"endDate\": \"{{ $json.date_prev_month_end }}\",\n  \"dimensions\": [\"page\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "58b0abf2-d9f7-41bc-b6cb-c4c57b60e6d2",
      "name": "Separar páginas - Mes anterior",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        1320
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "0c7e046b-6a6c-4465-b265-c353f40fc7e0",
      "name": "Formatear consulta - Mes anterior",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        1120
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "bcec450e-ca15-42e9-9644-b4e8c49d8ffb",
              "name": "query",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "72775f4f-742e-4597-bf75-971d1d280285",
      "name": "HTTP Request - Google Search Console - Fecha",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        -80
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"dimensions\": [\"date\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "c5be25f2-011b-4680-ab57-aab7f2ef96f7",
      "name": "Separar fecha",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        -80
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "ce7e232a-47dc-4844-b603-de92e3b2b624",
      "name": "Formatear fecha",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        -80
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "d94b7a08-4e03-4f4d-8f8c-9200632305a5",
              "name": "date",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "26335560-27b4-4d61-ae22-52a2932bb2c8",
      "name": "HTTP Request - Google Search Console - Resumen",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        -280
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "f6f9d96e-6db8-4626-b717-cd9b020b98a8",
      "name": "Separar resumen",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        -280
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "ab057902-8e4c-4beb-bc00-13fcd3d4d0ce",
      "name": "Formatear resumen",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        -280
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "61e0c8ee-f857-4089-ad25-85b3d9a5d44e",
      "name": "HTTP Request - Google Search Console - Página",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        320
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"dimensions\": [\"page\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "73834d1c-19a3-4161-892c-7bd3615b41e9",
      "name": "Separar páginas",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        320
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "945371f9-5929-415b-990b-3074653c0c17",
      "name": "HTTP Request - Google Search Console - Dispositivo",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        520
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"dimensions\": [\"device\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "99d8bd82-b42f-4251-9ab2-1da57af41bf1",
      "name": "Separar dispositivos",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        520
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "6774bd8f-e3f7-4bde-a59f-da4caff3b4d2",
      "name": "Formatear dispositivos",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        520
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "d94b7a08-4e03-4f4d-8f8c-9200632305a5",
              "name": "device",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "7222f304-0e37-4583-ad6c-53a0ef021833",
      "name": "HTTP Request - Google Search Console - País",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        720
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"dimensions\": [\"country\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "316674b1-8bc4-413f-8011-a70f12578dde",
      "name": "Separar país",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        720
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "2fc1ba15-52d7-4eb3-92b2-dc68a2d44e27",
      "name": "Formatear país",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        720
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "d94b7a08-4e03-4f4d-8f8c-9200632305a5",
              "name": "country",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "46bfc8e3-f7ee-43bc-a397-35760f2bdee7",
      "name": "HTTP Request - Google Search Console - Consulta",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        120
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_start }}\",\n  \"endDate\": \"{{ $json.date_end }}\",\n  \"dimensions\": [\"query\"],\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "13fca08f-2bc8-41ac-af85-568b68ff2767",
      "name": "Separar consulta",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        120
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "0959323a-313d-4da9-85f1-3af769dcfd00",
      "name": "Formatear consulta",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        120
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "bcec450e-ca15-42e9-9644-b4e8c49d8ffb",
              "name": "query",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b46adb8d-2ecb-42b4-9497-7dac642ec733",
      "name": "Formatear página - Mes anterior",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        1320
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "bcec450e-ca15-42e9-9644-b4e8c49d8ffb",
              "name": "page",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "baf8ea63-023b-4df5-8327-93fcae96a77c",
      "name": "Formatear página",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        320
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "bcec450e-ca15-42e9-9644-b4e8c49d8ffb",
              "name": "page",
              "type": "string",
              "value": "={{ $json.keys[0] }}"
            },
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "ed5e27a0-c217-4fe6-8267-b732eb3dbe09",
      "name": "HTTP Request - Google Search Console - Resumen - Mes anterior",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1100,
        920
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites/{{ $json.site_url }}/searchAnalytics/query",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"startDate\": \"{{ $json.date_prev_month_start }}\",\n  \"endDate\": \"{{ $json.date_prev_month_end }}\",\n  \"rowLimit\": 25000\n} ",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "e4c320dd-ab02-48d5-af80-0bc1e918366d",
      "name": "Separar consulta - Mes anterior",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        1120
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "2fcfa4eb-2b42-4d34-a393-2710f9ab634d",
      "name": "Separar resumen - Mes anterior",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -880,
        920
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "rows"
      },
      "typeVersion": 1
    },
    {
      "id": "ec6c8668-bf12-4aa0-9c3c-9a3c8975f996",
      "name": "Formatear resumen - Mes anterior",
      "type": "n8n-nodes-base.set",
      "position": [
        -660,
        920
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "5db89e4b-3694-4471-b43a-2a45862c61cc",
              "name": "clicks",
              "type": "string",
              "value": "={{ $json.clicks }}"
            },
            {
              "id": "fba7ee18-7d4e-4ad7-bb0d-aa651eea9490",
              "name": "impressions",
              "type": "string",
              "value": "={{ $json.impressions }}"
            },
            {
              "id": "6a1b6b46-464e-4fd0-9faa-abfec6d9729c",
              "name": "ctr",
              "type": "string",
              "value": "={{ $json.ctr }}"
            },
            {
              "id": "7770d1e7-d892-4598-9a20-c5fef76adcf4",
              "name": "position",
              "type": "string",
              "value": "={{ $json.position }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "1eee216f-b8cb-43d6-913a-1fcecf7bd785",
      "name": "Formatear datos",
      "type": "n8n-nodes-base.code",
      "position": [
        -220,
        520
      ],
      "parameters": {
        "jsCode": "// Pull each dataset using .all()\nconst overview        = $('Format Overview').all()[0].json;\nconst dateData        = $('Format Date').all().map(item => item.json);\nconst pageData        = $('Format Page').all().map(item => item.json);\nconst queryData       = $('Format Query').all().map(item => item.json);\nconst deviceData      = $(\"Format Devices\").all().map(item => item.json);\nconst countryData     = $('Format Country').all().map(item => item.json);\nconst overviewPrev    = $('Format Overview - Previous month').all()[0].json;\nconst queryPrevData   = $('Format Query - Previous month').all().map(item => item.json);\nconst pagePrevData    = $('Format Page - Previous month').all().map(item => item.json);\n\n\n// // Helper for subtitles\nfunction pctSubtitle(curr, prev) {\n  const diff  = curr - prev;\n  const arrow = diff >= 0 ? '↗' : '↘';\n  const col   = diff >= 0 ? 'green' : 'red';\n  const pct   = prev === 0 ? 'N/A' : Math.abs(diff / prev * 100).toFixed(1) + '%';\n  return `<p style='color:${col}'>${arrow} ${pct} vs last month</p>`;\n}\nfunction numSubtitle(curr, prev) {\n  const diff  = curr - prev;\n  const arrow = diff >= 0 ? '↗' : '↘';\n  const col   = diff >= 0 ? 'green' : 'red';\n  return `<p style='color:${col}'>${arrow} ${Math.abs(diff)} vs last month</p>`;\n}\n\n// helper to remove protocol+domain, leaving only the path\nfunction stripPath(url) {\n  return url.replace(/^https?:\\/\\/[^/]+/, '');\n}\n\n// just above your report definition, build a Set of previous-month queries:\nconst prevQueries = new Set(queryPrevData.map(q => q.query));\n\n// Build the output\nconst report = {\n  report_date: `${dateData[0].date} to ${dateData[dateData.length - 1].date}`,\n  overview: {\n    impressions: {\n      value:    overview.impressions,\n      subtitle: pctSubtitle(overview.impressions, overviewPrev.impressions),\n    },\n    clicks: {\n      value:    overview.clicks,\n      subtitle: pctSubtitle(overview.clicks,    overviewPrev.clicks),\n    },\n    average_ctr: {\n      value:    (parseFloat(overview.ctr)*100).toFixed(2)+\"%\",\n      subtitle: pctSubtitle(overview.ctr, overviewPrev.ctr),\n    },\n    average_position: {\n      value:    parseFloat(overview.position).toFixed(1),\n      subtitle: pctSubtitle(overview.position, overviewPrev.position),\n    },\n  },\n  performance: {\n    impressions: dateData.map(d => d.impressions),\n    clicks:      dateData.map(d => d.clicks),\n    labels:      dateData.map(d => d.date),\n  },\n  top_10_countries: {\n    clicks:  countryData.sort((a, b) => b.clicks - a.clicks).slice(0,10).map(d => parseInt(d.clicks)),\n    labels:  countryData.sort((a, b) => b.clicks - a.clicks).slice(0,10).map(d => d.country),\n  },\n  devices: {\n    clicks:  deviceData.sort((a, b) => b.clicks - a.clicks).slice(0,10).map(d => parseInt(d.clicks)),\n    labels:  deviceData.sort((a, b) => b.clicks - a.clicks).slice(0,10).map(d => d.device),\n  },\n  organic_keywords_ranking: {\n    top_3: {\n      value:    queryData.filter(q => q.position <= 3).length,\n      subtitle: numSubtitle(\n                   queryData.filter(q => q.position <= 3).length,\n                   queryPrevData.filter(q => q.position <= 3).length\n                ),\n    },\n    from_3_10: {\n      value:    queryData.filter(q => q.position >= 4 && q.position <= 10).length,\n      subtitle: numSubtitle(\n                   queryData.filter(q => q.position >= 4 && q.position <= 10).length,\n                   queryPrevData.filter(q => q.position >= 4 && q.position <= 10).length\n                ),\n    },\n    from_11_20: {\n      value:    queryData.filter(q => q.position >= 11 && q.position <= 20).length,\n      subtitle: numSubtitle(\n                   queryData.filter(q => q.position >= 11 && q.position <= 20).length,\n                   queryPrevData.filter(q => q.position >= 11 && q.position <= 20).length\n                ),\n    },\n    from_21_100: {\n      value:    queryData.filter(q => q.position >= 21).length,\n      subtitle: numSubtitle(\n                   queryData.filter(q => q.position >= 21).length,\n                   queryPrevData.filter(q => q.position >= 21).length\n                ),\n    },\n  },\n  top_5_pages: pageData\n    .sort((a, b) => b.clicks - a.clicks)\n    .slice(0,5)\n    .map(d => ({\n      page:       `<p style='max-width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis'><strong>${stripPath(d.page)}</strong></p>`,\n      clicks:     d.clicks,\n      impressions: d.impressions,\n      ctr:         (parseFloat(d.ctr)*100).toFixed(2)+\"%\",\n      position:    parseFloat(d.position).toFixed(1),\n    })),\n  top_5_keywords: queryData\n    .sort((a, b) => b.clicks - a.clicks)\n    .slice(0,5)\n    .map(d => ({\n      keyword:    `<p style='max-width:180px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis'><strong>${d.query}</strong></p>`,\n      clicks:     d.clicks,\n      impressions: d.impressions,\n      ctr:         (parseFloat(d.ctr)*100).toFixed(2)+\"%\",\n      position:    parseFloat(d.position).toFixed(1),\n    })),\n  pages_who_lost_most_traffic_vs_last_month:pagePrevData\n  .map(prev => {\n    const curr = pageData.find(d => d.page === prev.page) || { clicks: 0 };\n    const delta = prev.clicks - curr.clicks;            // positive = clicks lost\n    return {\n      page: prev.page,\n      clicks: curr.clicks,\n      clicks_last_month: prev.clicks,\n      delta\n    };\n  })\n  .sort((a, b) => b.delta - a.delta)                   // highest drops first\n  .slice(0, 5)\n  .map(({ page, clicks, clicks_last_month, delta }) => ({\n    page: `<p style='max-width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis'><strong>${stripPath(page)}</strong></p>`,                             // removes protocol+domain\n    clicks,\n    clicks_last_month,\n    delta:\"-\"+delta\n  })),\n  top_5_new_keywords_last_month: queryData\n   // keep only queries not present last month\n  .filter(d => !prevQueries.has(d.query))\n  // sort by clicks descending\n  .sort((a, b) => b.clicks - a.clicks)\n  // take top 5\n  .slice(0, 5)\n  // format exactly like your other lists\n  .map(d => ({\n    keyword:    `<p style='max-width:180px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis'><strong>${d.query}</strong></p>`,\n    clicks:     d.clicks,\n    impressions:d.impressions,\n    ctr:         (parseFloat(d.ctr)*100).toFixed(2) + \"%\",\n    position:    parseFloat(d.position).toFixed(1),\n  }))\n};\nreturn [{ json: report }];"
      },
      "executeOnce": false,
      "typeVersion": 2
    },
    {
      "id": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
      "name": "Combinar",
      "type": "n8n-nodes-base.merge",
      "position": [
        -440,
        400
      ],
      "parameters": {
        "numberInputs": 9
      },
      "typeVersion": 3.2
    },
    {
      "id": "c3190924-430d-4950-a715-fb577d4a0ee6",
      "name": "Generando perspectivas para resultados SEO",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        0,
        520
      ],
      "parameters": {
        "text": "={{ JSON.stringify($json) }}",
        "options": {
          "systemMessage": "=## Persona\nYou are a data-driven Search Console Insights Agent: concise, analytical, and focused on turning raw organic traffic metrics into clear, actionable narrative insights.\n\n## Objective\n- Ingest structured Search Console data (overview, by date, by page, by query, by device, by country, plus prior-period comparisons).\n- Produce a plain-text “Insights” section, not JSON.\n\n## Rules\n\n### Formatting\n- Output **only** plain text.\n- DO NOT output the word \"Insight:\" at the beginning\n- Summarize everything into a single paragraph of **300–400 characters**.\n- Do **not** include lists, bullet points, or any JSON—just free-flowing prose.\n\n### Content\n- The paragraph must:\n  1. Summarize one key trend or change (e.g. a drop in clicks on a specific URL, a spike in impressions on a query).\n  2. Contrast current vs. prior period (using percentages or absolute numbers).\n  3. Suggest a concrete, actionable next step.\n  4. Be as specific as possible, focusing on specific keywords and pages\n\n- Write in idiomatic, professional English, with one clear recommendation.\n\n## Step-by-Step Instructions\n1. **Parse Input**: Read the incoming report object with fields like:\n   - `overview` (clicks, impressions, ctr, position vs. prior)\n   - `dateData` (daily metrics)\n   - `pageData`, `queryData`, `deviceData`, `countryData`\n   - prior-period equivalents\n2. **Identify Top Insights**:\n   - Biggest drop or gain in clicks/impressions overall.\n   - Pages or queries with largest percentage changes.\n   - Biggest opportunity on CTR drop and impressions increase or click drops and impressions increase\n3. **Compose the Paragraph**:\n   - Describe the metric change, e.g. “We noticed that the page /blog/… experienced a 32% drop…”\n   - Be specific on pages and keywords, not only general metrics\n   - Offer a hypothesis (e.g. “This could indicate…”).\n   - End with an actionable recommendation (e.g. “Consider updating titles and meta descriptions…”).\n4. **Length Check**: Ensure the insight is between 300 and 400 characters.\n\n## Example Output\nInsights:\nWe noticed that the page /blog/2024/seo-strategy-guide experienced a 32% drop in clicks since April, despite a stable average position. This could indicate decreased search demand or less engaging titles/meta descriptions. The most urgent action is to refresh the title and meta description to better match user intent."
        },
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "c39bd736-3d76-4236-b79f-9e1e52f0fd7a",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1800,
        -180
      ],
      "parameters": {
        "color": 5,
        "width": 580,
        "height": 540,
        "content": "## To connect to Google OAuth2, you'll need to fill these information\n\n### Step 1: Enable & configure your Search Console API credentials\n\n\t**1.\tEnable the API**\n\t•\tIn the [Google Cloud Console](https://console.cloud.google.com/), enable the Search Console API for your project.\n\n\t**2.\tCreate an OAuth2 client**\n\t•\tUnder APIs & Services → Credentials, click Create Credentials → OAuth client ID.\n\t•\tSelect Web application, and add your n8n callback URL (e.g. https://<your-n8n-domain>/rest/oauth2-credential/callback).\n\t•\tNote the Client ID and Client Secret.\n\n\n### Step 2: Set up OAuth2 credentials in n8n\nIn n8n, go to Credentials → New → OAuth2.\nFill in:\n \t•\tAuth URI: https://accounts.google.com/o/oauth2/auth\n\t•\tAccess Token URI: https://oauth2.googleapis.com/token\n\t•\tClient ID: Copy from OAuth2 on Google Console\n\t•\tClient Secret: Copy from OAuth2 on Google Console\n\t•\tScope: https://www.googleapis.com/auth/webmasters.readonly\n\t•\tRedirect URI: n8n’s callback URL"
      },
      "typeVersion": 1
    },
    {
      "id": "ccc3a82c-b906-4332-8739-e46b0e70f7d5",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1600,
        840
      ],
      "parameters": {
        "color": 3,
        "width": 360,
        "height": 320,
        "content": "**If you're unsure of your siteUrl, use this node to check the list of siteUrls your user have access**"
      },
      "typeVersion": 1
    },
    {
      "id": "fd06a84f-de27-441d-9de9-e9691ea71d96",
      "name": "HTTP Request - Google Search Console - Listar SiteUrls de mi responsabilidad",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -1480,
        960
      ],
      "parameters": {
        "url": "=https://www.googleapis.com/webmasters/v3/sites",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2Api"
      },
      "credentials": {
        "oAuth2Api": {
          "id": "bGn73u7RA2mZCksv",
          "name": "Google OAuth2"
        },
        "httpHeaderAuth": {
          "id": "Z9SGcPUjCFlHCdPM",
          "name": "Google Auth"
        }
      },
      "typeVersion": 4.2,
      "alwaysOutputData": true
    }
  ],
  "connections": {
    "beac970b-49f9-4a23-9a46-5aeb8e062f87": {
      "main": [
        [
          {
            "node": "1eee216f-b8cb-43d6-913a-1fcecf7bd785",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0b8f7ebe-4629-405a-84ff-0dcf9334f272": {
      "main": [
        [
          {
            "node": "c744768d-3ffc-4ec8-8526-62992e9cdea0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ce7e232a-47dc-4844-b603-de92e3b2b624": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "baf8ea63-023b-4df5-8327-93fcae96a77c": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "1eee216f-b8cb-43d6-913a-1fcecf7bd785": {
      "main": [
        [
          {
            "node": "c3190924-430d-4950-a715-fb577d4a0ee6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0959323a-313d-4da9-85f1-3af769dcfd00": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "43d47434-1125-439d-ba6a-cab092db3f46": {
      "main": [
        [
          {
            "node": "72775f4f-742e-4597-bf75-971d1d280285",
            "type": "main",
            "index": 0
          },
          {
            "node": "61e0c8ee-f857-4089-ad25-85b3d9a5d44e",
            "type": "main",
            "index": 0
          },
          {
            "node": "945371f9-5929-415b-990b-3074653c0c17",
            "type": "main",
            "index": 0
          },
          {
            "node": "7222f304-0e37-4583-ad6c-53a0ef021833",
            "type": "main",
            "index": 0
          },
          {
            "node": "94ab0f9b-2c78-4e41-8388-2c707b4965ca",
            "type": "main",
            "index": 0
          },
          {
            "node": "ef74bcb0-c187-4135-ac30-fe6ec31723bf",
            "type": "main",
            "index": 0
          },
          {
            "node": "26335560-27b4-4d61-ae22-52a2932bb2c8",
            "type": "main",
            "index": 0
          },
          {
            "node": "ed5e27a0-c217-4fe6-8267-b732eb3dbe09",
            "type": "main",
            "index": 0
          },
          {
            "node": "46bfc8e3-f7ee-43bc-a397-35760f2bdee7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2fc1ba15-52d7-4eb3-92b2-dc68a2d44e27": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "6774bd8f-e3f7-4bde-a59f-da4caff3b4d2": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "c5be25f2-011b-4680-ab57-aab7f2ef96f7": {
      "main": [
        [
          {
            "node": "ce7e232a-47dc-4844-b603-de92e3b2b624",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c744768d-3ffc-4ec8-8526-62992e9cdea0": {
      "main": [
        [
          {
            "node": "639a05bc-e87f-4d1b-afb7-d95a3926676c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ab057902-8e4c-4beb-bc00-13fcd3d4d0ce": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "73834d1c-19a3-4161-892c-7bd3615b41e9": {
      "main": [
        [
          {
            "node": "baf8ea63-023b-4df5-8327-93fcae96a77c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "13fca08f-2bc8-41ac-af85-568b68ff2767": {
      "main": [
        [
          {
            "node": "0959323a-313d-4da9-85f1-3af769dcfd00",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1f0baeea-eb35-4dff-b9c4-1b4a95b53121": {
      "ai_languageModel": [
        [
          {
            "node": "c3190924-430d-4950-a715-fb577d4a0ee6",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "316674b1-8bc4-413f-8011-a70f12578dde": {
      "main": [
        [
          {
            "node": "2fc1ba15-52d7-4eb3-92b2-dc68a2d44e27",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "99d8bd82-b42f-4251-9ab2-1da57af41bf1": {
      "main": [
        [
          {
            "node": "6774bd8f-e3f7-4bde-a59f-da4caff3b4d2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "41fa4fa0-72a7-4402-b1ae-73615d55b3ec": {
      "main": [
        [
          {
            "node": "0b8f7ebe-4629-405a-84ff-0dcf9334f272",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f6f9d96e-6db8-4626-b717-cd9b020b98a8": {
      "main": [
        [
          {
            "node": "ab057902-8e4c-4beb-bc00-13fcd3d4d0ce",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "16032072-de5c-40c5-b8c3-52c6575e1157": {
      "main": [
        [
          {
            "node": "43d47434-1125-439d-ba6a-cab092db3f46",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b46adb8d-2ecb-42b4-9497-7dac642ec733": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 8
          }
        ]
      ]
    },
    "0c7e046b-6a6c-4465-b265-c353f40fc7e0": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 7
          }
        ]
      ]
    },
    "639a05bc-e87f-4d1b-afb7-d95a3926676c": {
      "main": [
        []
      ]
    },
    "ec6c8668-bf12-4aa0-9c3c-9a3c8975f996": {
      "main": [
        [
          {
            "node": "beac970b-49f9-4a23-9a46-5aeb8e062f87",
            "type": "main",
            "index": 6
          }
        ]
      ]
    },
    "58b0abf2-d9f7-41bc-b6cb-c4c57b60e6d2": {
      "main": [
        [
          {
            "node": "b46adb8d-2ecb-42b4-9497-7dac642ec733",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e4c320dd-ab02-48d5-af80-0bc1e918366d": {
      "main": [
        [
          {
            "node": "0c7e046b-6a6c-4465-b265-c353f40fc7e0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c3190924-430d-4950-a715-fb577d4a0ee6": {
      "main": [
        [
          {
            "node": "41fa4fa0-72a7-4402-b1ae-73615d55b3ec",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2fcfa4eb-2b42-4d34-a393-2710f9ab634d": {
      "main": [
        [
          {
            "node": "ec6c8668-bf12-4aa0-9c3c-9a3c8975f996",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "72775f4f-742e-4597-bf75-971d1d280285": {
      "main": [
        [
          {
            "node": "c5be25f2-011b-4680-ab57-aab7f2ef96f7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "61e0c8ee-f857-4089-ad25-85b3d9a5d44e": {
      "main": [
        [
          {
            "node": "73834d1c-19a3-4161-892c-7bd3615b41e9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "46bfc8e3-f7ee-43bc-a397-35760f2bdee7": {
      "main": [
        [
          {
            "node": "13fca08f-2bc8-41ac-af85-568b68ff2767",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "945371f9-5929-415b-990b-3074653c0c17": {
      "main": [
        [
          {
            "node": "99d8bd82-b42f-4251-9ab2-1da57af41bf1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7222f304-0e37-4583-ad6c-53a0ef021833": {
      "main": [
        [
          {
            "node": "316674b1-8bc4-413f-8011-a70f12578dde",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "26335560-27b4-4d61-ae22-52a2932bb2c8": {
      "main": [
        [
          {
            "node": "f6f9d96e-6db8-4626-b717-cd9b020b98a8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ef74bcb0-c187-4135-ac30-fe6ec31723bf": {
      "main": [
        [
          {
            "node": "58b0abf2-d9f7-41bc-b6cb-c4c57b60e6d2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "94ab0f9b-2c78-4e41-8388-2c707b4965ca": {
      "main": [
        [
          {
            "node": "e4c320dd-ab02-48d5-af80-0bc1e918366d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ed5e27a0-c217-4fe6-8267-b732eb3dbe09": {
      "main": [
        [
          {
            "node": "2fcfa4eb-2b42-4d34-a393-2710f9ab634d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Avanzado - Investigación de mercado, Resumen de IA

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos42
Categoría2
Tipos de nodos11
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Autor
Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34