{ "name": "Monitor Sheet Servers and Email Alerts", "tags": [], "nodes": [ { "id": "monitor-sheet-servers-and-email-alerts-0", "name": "Schedule Trigger", "type": "n8n-nodes-base.scheduleTrigger", "position": [ 0, 0 ], "parameters": { "rule": { "interval": [ { "field": "minutes", "minutesInterval": 1 } ] } }, "typeVersion": 1.2 }, { "id": "monitor-sheet-servers-and-email-alerts-1", "name": "Server-Monitor", "type": "n8n-nodes-base.googleSheets", "position": [ 220, 0 ], "parameters": { "options": {}, "sheetName": { "__rl": true, "mode": "name", "value": "Server_List" }, "documentId": { "__rl": true, "mode": "id", "value": "YOUR_SPREADSHEET_ID" } }, "typeVersion": 4.5 }, { "id": "monitor-sheet-servers-and-email-alerts-2", "name": "HTTP Request", "type": "n8n-nodes-base.httpRequest", "onError": "continueErrorOutput", "position": [ 440, 0 ], "parameters": { "url": "=http://{{ $json.Server }}", "options": { "timeout": 30000 } }, "typeVersion": 4.2 }, { "id": "monitor-sheet-servers-and-email-alerts-3", "name": "Server_Status_Alive", "type": "n8n-nodes-base.googleSheets", "position": [ 660, -180 ], "parameters": { "columns": { "value": { "Status": "Alive", "TimeStamp": "={{ $now.format('yyyy-MM-dd') }}", "Server IP Address": "={{ $('Server-Monitor').item.json.Server }}" }, "schema": [ { "id": "TimeStamp", "type": "string", "display": true, "required": false, "displayName": "TimeStamp", "defaultMatch": false, "canBeUsedToMatch": true }, { "id": "Server IP Address", "type": "string", "display": true, "required": false, "displayName": "Server IP Address", "defaultMatch": false, "canBeUsedToMatch": true }, { "id": "Status", "type": "string", "display": true, "required": false, "displayName": "Status", "defaultMatch": false, "canBeUsedToMatch": true } ], "mappingMode": "defineBelow", "matchingColumns": [], "attemptToConvertTypes": false, "convertFieldsToString": false }, "options": { "cellFormat": "RAW", "useAppend": true }, "operation": "append", "sheetName": { "__rl": true, "mode": "name", "value": "Server_Status_Alive" }, "documentId": { "__rl": true, "mode": "id", "value": "YOUR_SPREADSHEET_ID" } }, "typeVersion": 4.5 }, { "id": "monitor-sheet-servers-and-email-alerts-4", "name": "Gmail", "type": "n8n-nodes-base.gmail", "position": [ 660, 100 ], "parameters": { "message": "=Hi Team,\n\nAt {{$now.format('yyyy-MM-dd HH:mm:ss')}}, the following server failed its HTTP check:\n\nšŸ”» Server Down: {{ $('Server-Monitor').item.json.Server }} \n\nPlease investigate immediately to prevent service disruption. \n\nAutomated Monitoring System\n", "options": { "appendAttribution": false }, "subject": "=šŸ”» Server Down: {{ $('Server-Monitor').item.json.Server }}: {{ $today.format('yyyy-MM-dd') }}", "sendTo": "YOUR_ALERT_EMAIL", "emailType": "text" }, "typeVersion": 2.1 }, { "id": "monitor-sheet-servers-and-email-alerts-5", "name": "Server_Status_Down", "type": "n8n-nodes-base.googleSheets", "position": [ 880, 100 ], "parameters": { "columns": { "value": { "Status": "Down", "TimeStamp": "={{$now.format('yyyy-MM-dd HH:mm:ss')}}", "Server IP Address": "={{ $('Server-Monitor').item.json.Server }}" }, "schema": [ { "id": "TimeStamp", "type": "string", "display": true, "required": false, "displayName": "TimeStamp", "defaultMatch": false, "canBeUsedToMatch": true }, { "id": "Server IP Address", "type": "string", "display": true, "required": false, "displayName": "Server IP Address", "defaultMatch": false, "canBeUsedToMatch": true }, { "id": "Status", "type": "string", "display": true, "required": false, "displayName": "Status", "defaultMatch": false, "canBeUsedToMatch": true } ], "mappingMode": "defineBelow", "matchingColumns": [], "attemptToConvertTypes": false, "convertFieldsToString": false }, "options": { "cellFormat": "RAW", "useAppend": true }, "operation": "append", "sheetName": { "__rl": true, "mode": "name", "value": "Server_Status_Down" }, "documentId": { "__rl": true, "mode": "id", "value": "YOUR_SPREADSHEET_ID" } }, "typeVersion": 4.5 } ], "active": false, "pinData": {}, "settings": { "executionOrder": "v1", "timezone": "UTC" }, "connections": { "Gmail": { "main": [ [ { "node": "Server_Status_Down", "type": "main", "index": 0 } ] ] }, "HTTP Request": { "main": [ [ { "node": "Server_Status_Alive", "type": "main", "index": 0 } ], [ { "node": "Gmail", "type": "main", "index": 0 } ] ] }, "Server-Monitor": { "main": [ [ { "node": "HTTP Request", "type": "main", "index": 0 } ] ] }, "Schedule Trigger": { "main": [ [ { "node": "Server-Monitor", "type": "main", "index": 0 } ] ] } } }