AutomationFlowsData & Sheets › F — Планировщик Очереди (челлендж 200 Дней)

F — Планировщик Очереди (челлендж 200 Дней)

F — Планировщик очереди (Челлендж 200 дней). Uses googleSheets. Scheduled trigger; 6 nodes.

Cron / scheduled trigger★★★★☆ complexity6 nodesGoogle Sheets
Data & Sheets Trigger: Cron / scheduled Nodes: 6 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": "F \u2014 \u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043e\u0447\u0435\u0440\u0435\u0434\u0438 (\u0427\u0435\u043b\u043b\u0435\u043d\u0434\u0436 200 \u0434\u043d\u0435\u0439)",
  "nodes": [
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "days",
              "triggerAtHour": 18,
              "triggerAtMinute": 0
            }
          ]
        }
      },
      "id": "f-cron",
      "name": "\u041a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043d\u044c \u0432 18:00",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        -1400,
        0
      ]
    },
    {
      "parameters": {
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $env.GOOGLE_SHEETS_ID }}"
        },
        "sheetName": {
          "__rl": true,
          "mode": "name",
          "value": "pipeline"
        },
        "options": {}
      },
      "id": "f-read",
      "name": "\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.5,
      "position": [
        -1180,
        0
      ],
      "alwaysOutputData": true
    },
    {
      "parameters": {
        "jsCode": "const today = DateTime.now().setZone('Europe/Berlin').startOf('day');\nconst rows = $input.all().map(i => i.json).filter(r => r.day_number !== undefined && r.day_number !== '');\n\nconst due = rows\n  .filter(r => r.status === 'scheduled' && r.scheduled_date)\n  .map(r => ({ r, d: DateTime.fromISO(String(r.scheduled_date), { zone: 'Europe/Berlin' }) }))\n  .filter(x => x.d.isValid && x.d.startOf('day') <= today)\n  .sort((a, b) => (a.d - b.d) || (Number(a.r.day_number) - Number(b.r.day_number)));\n\nif (due.length === 0) {\n  return [{ json: { found: false } }];\n}\n\n// \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u043c \u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0434\u0438\u043d \u0440\u043e\u043b\u0438\u043a \u0437\u0430 \u0437\u0430\u043f\u0443\u0441\u043a (= \u043e\u0434\u0438\u043d \u0432 \u0434\u0435\u043d\u044c)\nreturn [{ json: { found: true, day: Number(due[0].r.day_number), queued_left: due.length - 1 } }];"
      },
      "id": "f-pick",
      "name": "\u041d\u0430\u0439\u0442\u0438 \u0440\u043e\u043b\u0438\u043a \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        -960,
        0
      ]
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "typeValidation": "loose",
            "version": 2
          },
          "conditions": [
            {
              "leftValue": "={{ $json.found }}",
              "rightValue": true,
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "f-if",
      "name": "\u0415\u0441\u0442\u044c \u0447\u0442\u043e \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c?",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2.2,
      "position": [
        -740,
        0
      ]
    },
    {
      "parameters": {
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultName": "P \u2014 \u041f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f: \u0434\u0432\u0438\u0436\u043e\u043a (\u0427\u0435\u043b\u043b\u0435\u043d\u0434\u0436 200 \u0434\u043d\u0435\u0439)"
        },
        "workflowInputs": {
          "mappingMode": "autoMapInputData",
          "value": {},
          "matchingColumns": [],
          "schema": []
        },
        "options": {
          "waitForSubWorkflow": false
        }
      },
      "id": "f-exec-p",
      "name": "\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044e (P)",
      "type": "n8n-nodes-base.executeWorkflow",
      "typeVersion": 1.2,
      "position": [
        -520,
        -100
      ]
    },
    {
      "parameters": {},
      "id": "f-noop",
      "name": "\u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043f\u0443\u0441\u0442\u043e",
      "type": "n8n-nodes-base.noOp",
      "typeVersion": 1,
      "position": [
        -520,
        120
      ]
    }
  ],
  "connections": {
    "\u041a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043d\u044c \u0432 18:00": {
      "main": [
        [
          {
            "node": "\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443": {
      "main": [
        [
          {
            "node": "\u041d\u0430\u0439\u0442\u0438 \u0440\u043e\u043b\u0438\u043a \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u041d\u0430\u0439\u0442\u0438 \u0440\u043e\u043b\u0438\u043a \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f": {
      "main": [
        [
          {
            "node": "\u0415\u0441\u0442\u044c \u0447\u0442\u043e \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u0415\u0441\u0442\u044c \u0447\u0442\u043e \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c?": {
      "main": [
        [
          {
            "node": "\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044e (P)",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "\u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043f\u0443\u0441\u0442\u043e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  }
}
Pro

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

About this workflow

F — Планировщик очереди (Челлендж 200 дней). Uses googleSheets. Scheduled trigger; 6 nodes.

Source: https://github.com/nikita-automation/content-publishing-pipeline/blob/main/workflows/F-scheduler.json — original creator credit. Request a take-down →

More Data & Sheets workflows → · Browse all categories →

Related workflows

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

Data & Sheets

Complaint Triage Orchestrator (S2.3). Uses httpRequest, googleSheets. Scheduled trigger; 65 nodes.

HTTP Request, Google Sheets
Data & Sheets

This workflow automates video distribution to 9 social platforms simultaneously using Blotato's API. It includes both a scheduled publisher (checks Google Sheets for videos marked "Ready") and a subwo

Google Sheets, HTTP Request, Form Trigger +2
Data & Sheets

YogiAI. Uses googleSheets, googleSheetsTool, httpRequest, stopAndError. Scheduled trigger; 61 nodes.

Google Sheets, Google Sheets Tool, HTTP Request +1
Data & Sheets

This workflow monitors Google Calendar for events indicating that a customer will visit the company today or the next day, retrieves the required details, and sends reminder notifications to the relev

Google Calendar, Google Sheets, HTTP Request +1
Data & Sheets

Useful if a team is working within a single instance and you want to be notified of what workflows have changed since you last visited them. Another use-case might be monitoring your managed instances

Google Sheets, Execute Workflow Trigger, n8n