{
  "name": "Automated Google Ads campaign reporting to Google Sheets with Airtable",
  "nodes": [
    {
      "id": "cdcaa757-2c08-4ac2-8cb6-d6cf830f22c3",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        208,
        112
      ]
    },
    {
      "id": "4820d9a8-fbcc-457e-8eb2-48241cb676b0",
      "name": "Firecrawl OK",
      "type": "n8n-nodes-base.if",
      "position": [
        1216,
        112
      ]
    },
    {
      "id": "24e4b1fe-86aa-409f-9e65-53be593aa50c",
      "name": "Copy template",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1936,
        112
      ]
    },
    {
      "id": "c674a422-144d-4bba-a2c9-e83289b17f0a",
      "name": "Data mapping",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3136,
        112
      ]
    },
    {
      "id": "faf1f64b-ea43-4a1e-bc95-489a3436dbde",
      "name": "Sorting URL into table",
      "type": "n8n-nodes-base.code",
      "position": [
        2512,
        112
      ]
    },
    {
      "id": "9602e6ec-345a-4bbc-b63c-df6d4bf6bd0a",
      "name": "Bad URL",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1520,
        160
      ]
    },
    {
      "id": "02c500ee-9d41-499d-a05f-9ea65f80816a",
      "name": "Map a website and get urls",
      "type": "@mendable/n8n-nodes-firecrawl.firecrawl",
      "position": [
        752,
        112
      ]
    },
    {
      "id": "8eb89dad-58b5-4146-b0ee-28bc9d5d71cf",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -64,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 1: URL Input and Trigger"
      }
    },
    {
      "id": "2c4410b9-c2fd-4bc9-a282-252c0fe78e8f",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -64,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 400,
        "content": "### What you do:\n\nProvide the website URL you want to analyze via the chat interface\nEnsure the URL is properly formatted (include https:// or http://)\nSubmit the request through the webhook endpoint\n"
      }
    },
    {
      "id": "2f120445-40d5-4dd5-b01d-f6d07e6fa664",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        528,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 2: Website Crawling and URL Discovery"
      }
    },
    {
      "id": "9b8cc81d-bd1e-4d14-b70f-1c7062ea9e99",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        528,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 304,
        "content": "### What the system does:\n\nUses Firecrawl service to map the entire website structure\nFocuses on sitemap crawling for comprehensive URL discovery\nExtracts all accessible pages from the target domain\nI"
      }
    },
    {
      "id": "7d7314eb-6da4-459f-918d-6e5a342b1354",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 3: Crawling Success Validation"
      }
    },
    {
      "id": "b76f753a-87b7-4b9a-ac92-914511952315",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 304,
        "content": "### What the system does:\n\nValidates Firecrawl response for successful completion\nChecks data quality and completeness\nRoutes workflow based on crawling success\nHandles failed crawls with appropriate "
      }
    },
    {
      "id": "da40e679-7d39-4731-a389-9f70cfa5f1b6",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1712,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 4: Template Preparation\n"
      }
    },
    {
      "id": "4e29a397-3957-48f3-90cc-10a6db3ccc18",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1712,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 304,
        "content": "### What the system does:\n\nCreates a copy of the predefined Google Sheets template\nNames the new spreadsheet with the website URL for identification\nPrepares structured sheets for data organization\nSe"
      }
    },
    {
      "id": "4595e01c-fa44-44da-a954-840bab317009",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2304,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 5: Intelligent URL Processing and Hierarchy Creation"
      }
    },
    {
      "id": "be53f55d-2dab-44f8-91fb-c70705401a42",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2304,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 544,
        "content": "### What the system does:\n\nAnalyzes all discovered URLs using advanced JavaScript processing\nSeparates different domains/subdomains for organized presentation\nCreates hierarchical structure based on U"
      }
    },
    {
      "id": "ee776535-a20a-4588-bbbb-3c22c443a490",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2896,
        0
      ],
      "parameters": {
        "width": 560,
        "height": 272,
        "content": "# Phase 6: Spreadsheet Population\n"
      }
    },
    {
      "id": "14f28476-23b7-4487-af3d-49d9d3137ce6",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2896,
        304
      ],
      "parameters": {
        "width": 560,
        "height": 320,
        "content": "### What the system does:\n\nMaps processed data to Google Sheets columns\nPopulates hierarchical levels (Niv 0 through Niv 5)\nCreates hyperlinked entries for direct page access\nMaintains URL references "
      }
    },
    {
      "id": "7f75ccde-9833-4cb7-80c9-60a45d122911",
      "name": "Sticky Note18",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1344,
        80
      ],
      "parameters": {
        "width": 816,
        "height": 336,
        "content": "## Need more advanced automation solutions? Contact us for custom enterprise workflows!\n\n# Growth-AI.fr\n\n## https://www.linkedin.com/in/allanvaccarizi/\n## https://www.linkedin.com/in/hugo-marinier-%F0"
      }
    }
  ],
  "connections": {
    "Firecrawl OK": {
      "main": [
        [
          {
            "node": "Copy template",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Bad URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Copy template": {
      "main": [
        [
          {
            "node": "Sorting URL into table",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sorting URL into table": {
      "main": [
        [
          {
            "node": "Data mapping",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Map a website and get urls": {
      "main": [
        [
          {
            "node": "Firecrawl OK",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "Map a website and get urls",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}