{
  "name": "Website downtime alert via LINE + Supabase log",
  "nodes": [
    {
      "id": "6637ff1d-43ca-4545-b427-44568da387f9",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        200,
        1100
      ]
    },
    {
      "id": "f56c8d70-222d-436b-94c3-90f0018a3742",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        700
      ],
      "parameters": {
        "width": 2500,
        "height": 820,
        "content": "## Monitor Website Check when Down ##"
      }
    },
    {
      "id": "675c17f6-f832-4a43-ac66-a5dea421bad8",
      "name": "Get Monitors",
      "type": "n8n-nodes-base.uptimeRobot",
      "position": [
        420,
        1100
      ]
    },
    {
      "id": "2a73c7ca-0db5-4e1f-85f6-e9e18b7bde1b",
      "name": "LLM Message Format",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1080,
        1100
      ]
    },
    {
      "id": "332f202e-c87d-49d1-aa7a-942631547058",
      "name": "OpenAI GPT-4o Mini",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1180,
        1320
      ]
    },
    {
      "id": "64a391a8-4bdf-43ce-887f-af7a17e93904",
      "name": "Escape Newlines",
      "type": "n8n-nodes-base.code",
      "position": [
        1460,
        1200
      ]
    },
    {
      "id": "171b91d8-b502-4a08-9056-ac075f215983",
      "name": "Send to LINE",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1680,
        1200
      ]
    },
    {
      "id": "b8b4beb8-e2a9-45d7-88b1-9409519d070f",
      "name": "Filter Down Monitors",
      "type": "n8n-nodes-base.code",
      "position": [
        640,
        1200
      ]
    },
    {
      "id": "2f2d9c4c-5d4e-483f-b800-f9cfe7c2e67c",
      "name": "If Down",
      "type": "n8n-nodes-base.if",
      "position": [
        860,
        1200
      ]
    },
    {
      "id": "4498a432-f4b6-4beb-978a-58cc9fdbbd64",
      "name": "Wait 30 Min",
      "type": "n8n-nodes-base.wait",
      "position": [
        1900,
        1200
      ]
    },
    {
      "id": "c0b608e5-0da6-4e13-9334-35b0b6e9ab1a",
      "name": "Loop Over Monitors",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        640,
        960
      ]
    },
    {
      "id": "002eaa11-a871-4387-9cee-77c389ca43b4",
      "name": "Filter Status 9",
      "type": "n8n-nodes-base.filter",
      "position": [
        860,
        1000
      ]
    },
    {
      "id": "a6b467c6-6f0e-41ac-8d15-7d70863f6499",
      "name": "Save to Supabase",
      "type": "n8n-nodes-base.supabase",
      "position": [
        860,
        800
      ]
    }
  ],
  "connections": {
    "If Down": {
      "main": [
        [
          {
            "node": "LLM Message Format",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Monitors": {
      "main": [
        [
          {
            "node": "Filter Down Monitors",
            "type": "main",
            "index": 0
          },
          {
            "node": "Loop Over Monitors",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send to LINE": {
      "main": [
        [
          {
            "node": "Wait 30 Min",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Escape Newlines": {
      "main": [
        [
          {
            "node": "Send to LINE",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Status 9": {
      "main": [
        [
          {
            "node": "Loop Over Monitors",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get Monitors",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "LLM Message Format": {
      "main": [
        [
          {
            "node": "Escape Newlines",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Monitors": {
      "main": [
        [
          {
            "node": "Save to Supabase",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Filter Status 9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Down Monitors": {
      "main": [
        [
          {
            "node": "If Down",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}