{
  "name": "Scrape RSS job posts, deduplicate with Google Sheets, and send Telegram alerts",
  "nodes": [
    {
      "id": "cc5c0284-423f-4a98-a717-0cff4d5d8f79",
      "name": "Sticky Note - Main Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 720,
        "height": 940,
        "content": "## Scrape job posts from RSS feeds and get instant Telegram alerts\n\nAutomatically monitor job boards and RSS feeds on a schedule, filter by your criteria, deduplicate results, and get instant Telegram"
      }
    },
    {
      "id": "a5815a2d-045f-4106-813d-d08f04d6febb",
      "name": "Sticky Note - Data Source",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        928,
        912
      ],
      "parameters": {
        "width": 520,
        "height": 240,
        "content": "## 📥 Data Source\nSchedule trigger + HTTP request to fetch job posts from RSS/API"
      }
    },
    {
      "id": "a8dcbb02-4ccb-4669-8b9e-d8352a2636ff",
      "name": "Sticky Note - Parse Filter",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1472,
        912
      ],
      "parameters": {
        "width": 540,
        "height": 240,
        "content": "## 🔍 Parse & Filter\nExtract job fields, then filter by keywords, location, and role"
      }
    },
    {
      "id": "badff48d-3b8b-44fe-8d77-4637020a7c33",
      "name": "Sticky Note - Deduplicate",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2176,
        832
      ],
      "parameters": {
        "width": 464,
        "height": 240,
        "content": "## 🧹 Deduplicate & Log\nCheck against previously seen jobs, save new ones to Google Sheets"
      }
    },
    {
      "id": "25c2ccb0-d793-4486-8e9f-e770362be22e",
      "name": "Sticky Note - Alerts",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2864,
        784
      ],
      "parameters": {
        "width": 540,
        "height": 240,
        "content": "## 📣 Alerts\nSend formatted job notifications to Telegram with apply links"
      }
    },
    {
      "id": "27446981-2b9f-4c8f-a45a-8fd035d3c4d7",
      "name": "Sticky Note - Warning URL",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1504,
        1200
      ],
      "parameters": {
        "width": 280,
        "height": 156,
        "content": "## ⚠️ Replace with your job board URL\nUpdate the HTTP Request URL to your target RSS feed or API. See the main overview sticky for example URLs."
      }
    },
    {
      "id": "2cf9c4aa-e123-4a01-ba20-4c02aae83bf6",
      "name": "Sticky Note - Warning Keywords",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1824,
        1200
      ],
      "parameters": {
        "width": 280,
        "height": 140,
        "content": "## ⚠️ Edit your keywords\nUpdate `targetRoles`, `targetLocations`, and `excludeTerms` arrays to match your job search criteria."
      }
    },
    {
      "id": "203cb7b5-3baf-48f1-a236-6587b1afd850",
      "name": "⏰ Every 6 Hours",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        752,
        1024
      ]
    },
    {
      "id": "ced7e0fd-640c-4466-974f-cf18b5b734b6",
      "name": "🌐 Fetch Job Posts",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1152,
        1008
      ]
    },
    {
      "id": "8d5a015a-facd-4209-bdc4-1014bbd9d34a",
      "name": "🔧 Parse & Extract Jobs",
      "type": "n8n-nodes-base.code",
      "position": [
        1568,
        992
      ]
    },
    {
      "id": "95a79ff1-580b-4ee3-9956-d263f03653ae",
      "name": "🎯 Keyword Filter",
      "type": "n8n-nodes-base.code",
      "position": [
        1792,
        992
      ]
    },
    {
      "id": "44558676-f7f6-451c-9cbf-4e9605dd48a5",
      "name": "✅ Has Valid Jobs?",
      "type": "n8n-nodes-base.if",
      "position": [
        2016,
        992
      ]
    },
    {
      "id": "9c139a23-f8ab-4233-b258-36bd1390558f",
      "name": "📋 Read Seen Jobs",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2240,
        912
      ]
    },
    {
      "id": "0a30c12a-902e-4044-b598-456ffd4b1340",
      "name": "🧹 Deduplicate",
      "type": "n8n-nodes-base.code",
      "position": [
        2464,
        912
      ]
    },
    {
      "id": "cb5c3ec1-0760-464c-befa-b8145e491d9f",
      "name": "🆕 New Jobs Only?",
      "type": "n8n-nodes-base.if",
      "position": [
        2688,
        912
      ]
    },
    {
      "id": "6fa826da-9cb3-42cb-8d1f-021a4c0920e9",
      "name": "📊 Log New Jobs",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2912,
        864
      ]
    },
    {
      "id": "499d208e-c88a-422e-af12-b3d78f9b6429",
      "name": "📲 Telegram Alert",
      "type": "n8n-nodes-base.telegram",
      "position": [
        3136,
        864
      ]
    },
    {
      "id": "0bd964ca-0a8b-41a2-8c3e-50d9bdd880cc",
      "name": "💤 No New Jobs",
      "type": "n8n-nodes-base.code",
      "position": [
        2912,
        1088
      ]
    }
  ],
  "connections": {
    "🧹 Deduplicate": {
      "main": [
        [
          {
            "node": "🆕 New Jobs Only?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "⏰ Every 6 Hours": {
      "main": [
        [
          {
            "node": "🌐 Fetch Job Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "📊 Log New Jobs": {
      "main": [
        [
          {
            "node": "📲 Telegram Alert",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "✅ Has Valid Jobs?": {
      "main": [
        [
          {
            "node": "📋 Read Seen Jobs",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "💤 No New Jobs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "🆕 New Jobs Only?": {
      "main": [
        [
          {
            "node": "📊 Log New Jobs",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "💤 No New Jobs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "🎯 Keyword Filter": {
      "main": [
        [
          {
            "node": "✅ Has Valid Jobs?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "📋 Read Seen Jobs": {
      "main": [
        [
          {
            "node": "🧹 Deduplicate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "🌐 Fetch Job Posts": {
      "main": [
        [
          {
            "node": "🔧 Parse & Extract Jobs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "🔧 Parse & Extract Jobs": {
      "main": [
        [
          {
            "node": "🎯 Keyword Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}