{
  "name": "Sequential Google Sheets data processing with execution control",
  "nodes": [
    {
      "id": "ac9d5f0d-5fbd-4a26-93e4-a9b7ba66a7f1",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        32,
        -592
      ],
      "parameters": {
        "width": 1148,
        "height": 728,
        "content": "## Preventing Simultaneous Executions of Scheduled Workflows\n\nThis n8n template provides a robust solution for processing data from Google Sheets in a controlled manner, specifically designed to **pre"
      }
    },
    {
      "id": "c775e4d0-68c8-400c-adcc-3ffc1c43819c",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        448,
        192
      ]
    },
    {
      "id": "ae6127ea-e503-4c24-ad19-6733ed07e87a",
      "name": "Read Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        224,
        288
      ]
    },
    {
      "id": "810336b0-1a21-448a-87a1-9bb4388ce9ae",
      "name": "Update Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1088,
        288
      ]
    },
    {
      "id": "efa03f8c-e27d-47eb-b671-f42265ccbece",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        32,
        288
      ]
    },
    {
      "id": "d11b9464-0510-404d-82c1-a2aac71a67cc",
      "name": "Wait random seconds (workload)",
      "type": "n8n-nodes-base.wait",
      "position": [
        656,
        288
      ]
    },
    {
      "id": "fe31d962-d720-4ba4-8ef3-4827f7f965a0",
      "name": "Prepare output",
      "type": "n8n-nodes-base.set",
      "position": [
        880,
        288
      ]
    },
    {
      "id": "512983c7-5f71-470a-a4eb-ff819483a137",
      "name": "Wait after quota error",
      "type": "n8n-nodes-base.wait",
      "position": [
        1088,
        528
      ]
    },
    {
      "id": "625ad76b-deea-4a34-a9cd-5c706282bdae",
      "name": "Wait after quota error 2",
      "type": "n8n-nodes-base.wait",
      "position": [
        224,
        528
      ]
    }
  ],
  "connections": {
    "Prepare output": {
      "main": [
        [
          {
            "node": "Update Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Wait random seconds (workload)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Read Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Google Sheets": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait after quota error 2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Google Sheets": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait after quota error",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait after quota error": {
      "main": [
        [
          {
            "node": "Update Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait after quota error 2": {
      "main": [
        [
          {
            "node": "Read Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait random seconds (workload)": {
      "main": [
        [
          {
            "node": "Prepare output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}