{
  "name": "Monitor SSL certificate expiry with Google Sheets and multi-channel alert",
  "nodes": [
    {
      "id": "b1b8afac-d0c7-4db3-aae8-cdf90c9d319e",
      "name": "URLs to Monitor",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -240,
        960
      ]
    },
    {
      "id": "5ecc3df7-e262-479c-9bdc-0542e53e77bf",
      "name": "Weekly Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1220,
        1400
      ]
    },
    {
      "id": "1b1d98f0-20fa-4a33-ae60-f8d1ae85175a",
      "name": "Fetch URLs",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1000,
        1400
      ]
    },
    {
      "id": "f74997af-a60a-4548-862d-fabf4c30fdfe",
      "name": "Check SSL",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -680,
        1400
      ]
    },
    {
      "id": "64e97269-d21e-4395-abcb-9fb3267acca6",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -740,
        1140
      ],
      "parameters": {
        "width": 220,
        "height": 424,
        "content": "Uses SSL-Checker.io to verify the SSL certificate of each URL. Fetches details like the host, validity period, and days remaining until expiry."
      }
    },
    {
      "id": "66ea2a30-5a86-484f-a291-4656e12a276e",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -280,
        880
      ],
      "parameters": {
        "width": 460,
        "height": 240,
        "content": "Updates the Google Sheet with SSL details, including the expiry date and certificate status."
      }
    },
    {
      "id": "5b2be392-fbbe-4315-b538-029477810079",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        1140
      ],
      "parameters": {
        "width": 200,
        "height": 424,
        "content": "Checks certificates and groups into:\n- invalid (certificate invalid)\n- warning (expires in <30 days)\n- notice (expires in <60 days)\n- info (everything else)"
      }
    },
    {
      "id": "10abe576-d706-4467-b3b3-06e1b6168e86",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -100,
        1140
      ],
      "parameters": {
        "width": 280,
        "height": 204,
        "content": "Invalid\n"
      }
    },
    {
      "id": "bdb59028-9bd8-4c31-9110-ef6ddb2d73ad",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        -440,
        1380
      ]
    },
    {
      "id": "75e2af9b-eb63-484c-8fd5-5411f3c93075",
      "name": "Send Alert Email2",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -240,
        1180
      ]
    },
    {
      "id": "7784db6d-f00e-48c8-97d7-a9795c5f4d65",
      "name": "Send Alert Email4",
      "type": "n8n-nodes-base.gmail",
      "position": [
        60,
        1180
      ]
    },
    {
      "id": "b5581ba7-6eb9-4b75-9b9f-6070d66ca76e",
      "name": "Send Alert Email6",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -80,
        1400
      ]
    },
    {
      "id": "39f3800b-7c0e-43cc-8a21-7eb8c93c2666",
      "name": "Ntfy4",
      "type": "n8n-nodes-ntfy.Ntfy",
      "position": [
        60,
        1400
      ]
    },
    {
      "id": "584f427c-cfb2-4bf0-b2ad-4f1296eddfcf",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1020,
        1140
      ],
      "parameters": {
        "width": 260,
        "height": 424,
        "content": "Pulls the list of URLs to monitor from the Google Sheet. Ensure you clone the Google Sheet worksheet and update this node with its URL.\n\nThis is the Sheet Layout:\n  A              B              C\n1 U"
      }
    },
    {
      "id": "04a97e64-7f7d-4e4e-a441-93c72ceabf5c",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1300,
        1140
      ],
      "parameters": {
        "width": 260,
        "height": 424,
        "content": "Triggers the workflow once a week."
      }
    },
    {
      "id": "19e7ea5a-2b9d-45aa-8ab4-14d0fd181e89",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -280,
        1360
      ],
      "parameters": {
        "width": 170,
        "height": 204,
        "content": "Notice\n"
      }
    },
    {
      "id": "1aa248e8-58a2-415c-9de9-ec58994d2160",
      "name": "Send Alert Email1",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -240,
        1400
      ]
    },
    {
      "id": "0a2d85a2-f9ad-445f-9839-f4643d8389c7",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -280,
        1140
      ],
      "parameters": {
        "width": 170,
        "height": 204,
        "content": "Warning\n"
      }
    },
    {
      "id": "b87be8c5-4b2a-4f1e-8f20-c7c341af647e",
      "name": "Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -80,
        1180
      ]
    },
    {
      "id": "a7c9f536-5e02-4d03-98bc-e3b4e3844ffb",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -100,
        1360
      ],
      "parameters": {
        "width": 280,
        "height": 204,
        "content": "Info\n"
      }
    },
    {
      "id": "68cc4856-6e1d-4cae-8075-0a880d5c1a0b",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1300,
        400
      ],
      "parameters": {
        "width": 1000,
        "height": 720,
        "content": "## SSL Expiry Alert System\n\n### Who is this for?\nThis workflow is ideal for administrators or IT professionals responsible for monitoring SSL certificates of multiple websites to ensure they do not ex"
      }
    }
  ],
  "connections": {
    "Switch": {
      "main": [
        [
          {
            "node": "Send Alert Email4",
            "type": "main",
            "index": 0
          },
          {
            "node": "Telegram",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Alert Email2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Alert Email1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Alert Email6",
            "type": "main",
            "index": 0
          },
          {
            "node": "Ntfy4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check SSL": {
      "main": [
        [
          {
            "node": "URLs to Monitor",
            "type": "main",
            "index": 0
          },
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch URLs": {
      "main": [
        [
          {
            "node": "Check SSL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Weekly Trigger": {
      "main": [
        [
          {
            "node": "Fetch URLs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}