Extracción de creativos de Google Ads por dominio

Avanzado

Este es unAI, Marketingflujo de automatización del dominio deautomatización que contiene 16 nodos.Utiliza principalmente nodos como Set, Switch, Function, HttpRequest, ManualTrigger, combinando tecnología de inteligencia artificial para lograr automatización inteligente. Extraer creativos de Google Ads por dominio usando SerpAPI y exportar como CSV

Requisitos previos
  • Pueden requerirse credenciales de autenticación para la API de destino
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
{
  "meta": {
    "instanceId": "04fd795d32aabb18b913b4a3350b5cd0e9313a422ea0e7bdac0da2fb76cac9f7"
  },
  "nodes": [
    {
      "id": "65aafe70-bcfb-4c28-96dd-17d9dd2f4203",
      "name": "Obtener página de anuncios 1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -380,
        580
      ],
      "parameters": {
        "url": "https://serpapi.com/search.json",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpQueryAuth",
        "queryParametersUi": {
          "parameter": [
            {
              "name": "engine",
              "value": "google_ads_transparency_center"
            },
            {
              "name": "text",
              "value": "={{$json[\"domain\"]}}"
            },
            {
              "name": "region",
              "value": "={{$json[\"region\"]}}"
            },
            {
              "name": "api_key",
              "value": "your_serpapi_key"
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "6158066c-e944-42cf-9a40-5c2c309a8567",
      "name": "Al hacer clic en 'Probar flujo de trabajo'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1260,
        580
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "15dea6e9-0a6a-4ba1-ae36-7234f5f3ff13",
      "name": "Establecer dominio y región",
      "type": "n8n-nodes-base.set",
      "position": [
        -820,
        580
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "domain",
              "value": "example.com"
            },
            {
              "name": "region",
              "value": "example_region_code"
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 2
    },
    {
      "id": "8b768e62-6697-491e-89d6-6fa40aa36619",
      "name": "Extraer creatividades de anuncios",
      "type": "n8n-nodes-base.function",
      "position": [
        60,
        580
      ],
      "parameters": {
        "functionCode": "const targetDomain = items[0].json.search_parameters.text.toLowerCase();\n\nreturn items[0].json.ad_creatives\n  .filter(ad => (ad.target_domain || '').toLowerCase() === targetDomain)\n  .map(ad => ({ json: ad }));\n"
      },
      "typeVersion": 1,
      "alwaysOutputData": false
    },
    {
      "id": "50bcee68-570e-4b2f-bc14-3e5148f63ed6",
      "name": "Dividir por Formato1",
      "type": "n8n-nodes-base.switch",
      "rules": {
        "rules": [
          {
            "value1": "text",
            "operation": "equal"
          },
          {
            "value1": "image",
            "operation": "equal"
          },
          {
            "value1": "video",
            "operation": "equal"
          }
        ]
      },
      "position": [
        500,
        560
      ],
      "parameters": {
        "rules": {
          "rules": [
            {
              "value2": "text"
            },
            {
              "output": 1,
              "value2": "image"
            },
            {
              "output": 2,
              "value2": "video"
            }
          ]
        },
        "value1": "={{$json[\"format\"]}}",
        "dataType": "string"
      },
      "typeVersion": 1
    },
    {
      "id": "5a385bb4-a7eb-4327-8719-311ba61fe82a",
      "name": "Convertir anuncios de texto a CSV",
      "type": "n8n-nodes-base.spreadsheetFile",
      "position": [
        900,
        220
      ],
      "parameters": {
        "options": {
          "fileName": "=/files/text_{{ $json.target_domain }}_ads.csv"
        },
        "operation": "toFile"
      },
      "typeVersion": 1
    },
    {
      "id": "2860d7c8-8c45-4d13-964d-40d6565e7a18",
      "name": "Convertir anuncios de imagen a CSV",
      "type": "n8n-nodes-base.spreadsheetFile",
      "position": [
        900,
        680
      ],
      "parameters": {
        "options": {
          "fileName": "=/files/image_{{ $json.target_domain }}_ads.csv"
        },
        "operation": "toFile",
        "fileFormat": "csv"
      },
      "typeVersion": 1
    },
    {
      "id": "2240db0a-0cb3-4449-a187-6daa52bca0fd",
      "name": "Convertir anuncios de video a CSV1",
      "type": "n8n-nodes-base.spreadsheetFile",
      "position": [
        900,
        1120
      ],
      "parameters": {
        "options": {
          "fileName": "=/files/video_{{ $json.target_domain }}_ads.csv"
        },
        "operation": "toFile",
        "fileFormat": "csv"
      },
      "typeVersion": 1
    },
    {
      "id": "bc86000d-ed7b-4690-a19e-3b9819024c8b",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1380,
        120
      ],
      "parameters": {
        "color": 7,
        "width": 360,
        "height": 420,
        "content": "# Node Annotations\n\n✅ When clicking 'Test workflow'\nTrigger the workflow manually during testing or development.\n\n📌 Note:\nUsed for debugging or one-time executions. No configuration needed."
      },
      "typeVersion": 1
    },
    {
      "id": "431fdfd5-9550-4eca-8489-26fb126e828e",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -940,
        120
      ],
      "parameters": {
        "width": 360,
        "height": 420,
        "content": "# ✏️ Set Domain & Region\n\nDefine which domain and region you want to extract ads for.\n\n📌 Note:\n\nSet the domain (e.g., example.com)\n\nSet the region using the numeric SerpApi region code\n\n🔗 https://serpapi.com/google-ads-transparency-center-regions"
      },
      "typeVersion": 1
    },
    {
      "id": "245857fd-4405-4f75-95d1-41d7374b770a",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        120
      ],
      "parameters": {
        "width": 360,
        "height": 420,
        "content": "# 🌐 Get Ads Page 1\n\nCalls SerpApi to fetch Google Ads Transparency data based on the domain and region.\n\n📌 Note:\n\nUses the SerpApi google_ads_transparency_center engine\n\nRequires a SerpApi API Key\n\nMake sure the region code is supported\n\nYou can paginate using next_page_token in future improvements\n\n🔗 https://serpapi.com/google-ads-transparency-center-api"
      },
      "typeVersion": 1
    },
    {
      "id": "59c2eab0-ce67-463b-aaea-bf5c69fcb15e",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        120
      ],
      "parameters": {
        "width": 360,
        "height": 420,
        "content": "# 🧠 Extract Ad Creatives\n\nFilters only the ad creatives where target_domain exactly matches your input.\n\n📌 Note:\n\nThis avoids pulling unrelated advertiser ads\n\nMakes sure only relevant ads for your domain are processed further"
      },
      "typeVersion": 1
    },
    {
      "id": "e87811c5-2f2a-4bd4-828b-ec4333393839",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        380,
        120
      ],
      "parameters": {
        "width": 360,
        "height": 420,
        "content": "# 🔀 Split by Format\n\nSorts the ads by their format into separate branches: text, image, or video.\n\n📌 Note:\n\nBased on format field of each ad\n\nEnsures clean CSV outputs for each type"
      },
      "typeVersion": 1
    },
    {
      "id": "f18950f7-9c67-4ffb-8c89-b2b70287db05",
      "name": "Nota adhesiva5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1140,
        120
      ],
      "parameters": {
        "color": 4,
        "width": 500,
        "height": 300,
        "content": "# 📄 Convert Text Ads to CSV\n\nSaves text ads in a CSV file named: text_{domain}_ads.csv\n\n📌 Note:\n\nUse this for text-only creatives\n\nFile will be saved in your /files/ directory"
      },
      "typeVersion": 1
    },
    {
      "id": "25d6d14b-e4c7-40e4-97be-b422871cc756",
      "name": "Nota adhesiva6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1140,
        580
      ],
      "parameters": {
        "color": 4,
        "width": 500,
        "height": 300,
        "content": "# 🖼️ Convert Image Ads to CSV\nSaves image-based ads to: image_{domain}_ads.csv\n\n📌 Note:\n\nContains ad dimensions and image URLs\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7d05ce27-42ee-4799-807a-eeb204b05553",
      "name": "Nota adhesiva7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1140,
        1040
      ],
      "parameters": {
        "color": 4,
        "width": 500,
        "height": 300,
        "content": "# 🎞️ Convert Video Ads to CSV\nExports video ads into: video_{domain}_ads.csv\n\n📌 Note:\n\nContains video links (HTML preview links or embedded content)"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "65aafe70-bcfb-4c28-96dd-17d9dd2f4203": {
      "main": [
        [
          {
            "node": "8b768e62-6697-491e-89d6-6fa40aa36619",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "50bcee68-570e-4b2f-bc14-3e5148f63ed6": {
      "main": [
        [
          {
            "node": "5a385bb4-a7eb-4327-8719-311ba61fe82a",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2860d7c8-8c45-4d13-964d-40d6565e7a18",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2240db0a-0cb3-4449-a187-6daa52bca0fd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "15dea6e9-0a6a-4ba1-ae36-7234f5f3ff13": {
      "main": [
        [
          {
            "node": "65aafe70-bcfb-4c28-96dd-17d9dd2f4203",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b768e62-6697-491e-89d6-6fa40aa36619": {
      "main": [
        [
          {
            "node": "50bcee68-570e-4b2f-bc14-3e5148f63ed6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6158066c-e944-42cf-9a40-5c2c309a8567": {
      "main": [
        [
          {
            "node": "15dea6e9-0a6a-4ba1-ae36-7234f5f3ff13",
            "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 - Inteligencia Artificial, Marketing

¿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 nodos16
Categoría2
Tipos de nodos7
Descripción de la dificultad

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

Autor
Nikan Noorafkan

Nikan Noorafkan

@nikkannoora

Hey, I’m Nikan Noorafkan — a creator passionate about building smart, automated workflows that drive business outcomes. With a background in performance marketing, user acquisition, and retention strategies, I use n8n to connect data, automate repetitive tasks, and scale growth across the funnel.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34