{
  "name": "Extract and structure Hacker News job posts with Gemini AI and save to Airtable",
  "nodes": [
    {
      "id": "2e510877-4fd3-4e46-a1ad-b44187226b78",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        340,
        400
      ]
    },
    {
      "id": "b5a9c1f3-f167-4646-8f11-97f4be32ff93",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2780,
        600
      ]
    },
    {
      "id": "80012214-5045-4c54-a5e1-cf7b76a611c3",
      "name": "Search for Who is hiring posts",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        140,
        400
      ]
    },
    {
      "id": "58a1f06b-0e41-4f73-9a47-5134806e4249",
      "name": "Get relevant data",
      "type": "n8n-nodes-base.set",
      "position": [
        640,
        400
      ]
    },
    {
      "id": "d69eb7f3-383f-4e67-a0e7-b5930cfc8b26",
      "name": "Get latest post",
      "type": "n8n-nodes-base.filter",
      "position": [
        920,
        400
      ]
    },
    {
      "id": "737cce8c-2ef0-4421-bccf-d9bdfa308385",
      "name": "Split out children (jobs)",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1400,
        400
      ]
    },
    {
      "id": "13e36405-f049-4d3d-a17c-f14b42817ba1",
      "name": "Trun into structured data",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        2540,
        400
      ]
    },
    {
      "id": "40d699ab-bf6d-402b-8192-c485a3525d27",
      "name": "Extract text",
      "type": "n8n-nodes-base.set",
      "position": [
        1800,
        400
      ]
    },
    {
      "id": "a20afe14-6457-4aa3-9135-75733c704723",
      "name": "Clean text",
      "type": "n8n-nodes-base.code",
      "position": [
        2000,
        400
      ]
    },
    {
      "id": "8ba5a5b4-0d03-46f8-90a1-7550913b77dd",
      "name": "Limit for testing (optional)",
      "type": "n8n-nodes-base.limit",
      "position": [
        2220,
        400
      ]
    },
    {
      "id": "d5535a17-79f1-4dc2-941a-ea4dd6a109a8",
      "name": "Write results to airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        3200,
        400
      ]
    },
    {
      "id": "e51caae1-c8d1-4954-91a5-d0dfde442346",
      "name": "HI API: Get the individual job post",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1600,
        400
      ]
    },
    {
      "id": "880d31e0-41fa-434d-a3d0-ac850ede0b59",
      "name": "HN API: Get Main Post",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1200,
        400
      ]
    },
    {
      "id": "e1bc30b5-b792-4f1e-8d38-ead61178c5fd",
      "name": "Code",
      "type": "n8n-nodes-base.code",
      "position": [
        2900,
        400
      ]
    },
    {
      "id": "294d6c73-8946-4ee7-8d60-11b72ecb3964",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        2600,
        620
      ]
    },
    {
      "id": "6a6c4536-a57a-4e58-a76f-81eef755fa19",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -20,
        400
      ]
    }
  ],
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "Write results to airtable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Get relevant data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean text": {
      "main": [
        [
          {
            "node": "Limit for testing (optional)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract text": {
      "main": [
        [
          {
            "node": "Clean text",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get latest post": {
      "main": [
        [
          {
            "node": "HN API: Get Main Post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Search for Who is hiring posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get relevant data": {
      "main": [
        [
          {
            "node": "Get latest post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HN API: Get Main Post": {
      "main": [
        [
          {
            "node": "Split out children (jobs)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Trun into structured data",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Trun into structured data",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Split out children (jobs)": {
      "main": [
        [
          {
            "node": "HI API: Get the individual job post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trun into structured data": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit for testing (optional)": {
      "main": [
        [
          {
            "node": "Trun into structured data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search for Who is hiring posts": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HI API: Get the individual job post": {
      "main": [
        [
          {
            "node": "Extract text",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}