AutomationFlowsWeb Scraping › Complex Sensor Flow

Complex Sensor Flow

Complex Sensor Flow. Uses httpRequest. Scheduled trigger; 9 nodes.

Cron / scheduled trigger★★★★☆ complexity9 nodesHTTP Request
Web Scraping Trigger: Cron / scheduled Nodes: 9 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Complex Sensor Flow",
  "nodes": [
    {
      "id": "1",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1,
      "position": [
        200,
        300
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "seconds",
              "secondsInterval": 5
            }
          ]
        }
      }
    },
    {
      "id": "2",
      "name": "Generate Sensor Data",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        500,
        300
      ],
      "parameters": {
        "jsCode": "\n            return [{\n                json: {\n                    sensor: 'sensor-A',   \n                    temperature: Math.floor(Math.random() * 50), \n                    humidity: Math.floor(Math.random() * 100),\n                    timestamp: Date.now()\n                }\n            }];\n            "
      }
    },
    {
      "id": "3",
      "name": "Temperature Check",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2,
      "position": [
        800,
        300
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.temperature }}",
              "operation": "smaller",
              "value2": 35
            }
          ]
        }
      }
    },
    {
      "id": "4",
      "name": "Normal Message",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3,
      "position": [
        1100,
        200
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "status",
              "value": "normal"
            }
          ]
        }
      }
    },
    {
      "id": "5",
      "name": "Alert Message",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3,
      "position": [
        1100,
        400
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "status",
              "value": "ALERT"
            },
            {
              "name": "priority",
              "value": "critical"
            }
          ]
        }
      }
    },
    {
      "id": "6",
      "name": "Format UI Message",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        800,
        550
      ],
      "parameters": {
        "jsCode": "\n            return [{\n                json: { message: `Sensor ${$json.sensor} Temp=${$json.temperature}C` }\n            }];\n            "
      }
    },
    {
      "id": "7",
      "name": "UI Debug",
      "type": "n8n-nodes-base.noOp",
      "typeVersion": 1,
      "position": [
        1100,
        550
      ],
      "parameters": {}
    },
    {
      "id": "8",
      "name": "Send To API",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4,
      "position": [
        1450,
        300
      ],
      "parameters": {
        "method": "POST",
        "url": "https://example.com/api/sensor",
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ $json }}"
      }
    },
    {
      "id": "9",
      "name": "Response",
      "type": "n8n-nodes-base.noOp",
      "typeVersion": 1,
      "position": [
        1700,
        300
      ],
      "parameters": {}
    }
  ],
  "connections": {
    "Schedule Trigger": {
      "main": [
        [
          {
            "type": "main",
            "node": "Generate Sensor Data",
            "index": 0
          }
        ]
      ]
    },
    "Generate Sensor Data": {
      "main": [
        [
          {
            "type": "main",
            "node": "Temperature Check",
            "index": 0
          },
          {
            "type": "main",
            "node": "Format UI Message",
            "index": 0
          }
        ]
      ]
    },
    "Temperature Check": {
      "main": [
        [
          {
            "type": "main",
            "node": "Normal Message",
            "index": 0
          }
        ],
        [
          {
            "type": "main",
            "node": "Alert Message",
            "index": 0
          }
        ]
      ]
    },
    "Normal Message": {
      "main": [
        [
          {
            "type": "main",
            "node": "Send To API",
            "index": 0
          }
        ]
      ]
    },
    "Alert Message": {
      "main": [
        [
          {
            "type": "main",
            "node": "Send To API",
            "index": 0
          }
        ]
      ]
    },
    "Format UI Message": {
      "main": [
        [
          {
            "type": "main",
            "node": "UI Debug",
            "index": 0
          }
        ]
      ]
    },
    "Send To API": {
      "main": [
        [
          {
            "type": "main",
            "node": "Response",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Complex Sensor Flow. Uses httpRequest. Scheduled trigger; 9 nodes.

Source: https://github.com/atdrez/exon/blob/f273ca53807c9976b452d1b685687db49752ec54/examples/automation/gen/n8n.json — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Web Scraping

Birthday Automation - Production (Fixed). Uses stopAndError, httpRequest, emailSend, bannerbear. Scheduled trigger; 86 nodes.

Stop And Error, HTTP Request, Email Send +1
Web Scraping

This template runs two scheduled workflows to govern Microsoft Entra ID (Azure AD) guest accounts by detecting stale users via Microsoft Graph, staging deletions in SharePoint with a 72-hour window, n

Microsoft SharePoint, Microsoft Teams, Microsoft Entra +1
Web Scraping

Jira-Allure-Auto-Qa. Uses httpRequest, jira. Scheduled trigger; 68 nodes.

HTTP Request, Jira
Web Scraping

Spotify-Sync-Surrealdb-V1. Uses httpRequest, n8n-nodes-surrealdb, spotify. Scheduled trigger; 62 nodes.

HTTP Request, N8N Nodes Surrealdb, Spotify
Web Scraping

As n8n instances scale, teams often lose track of sub-workflows—who uses them, where they are referenced, and whether they can be safely updated. This leads to inefficiencies like unnecessary copies o

HTTP Request, n8n, N8N Trigger +1