AutomationFlowsAI & RAG › Scheduled Reminder Checker & Sender

Scheduled Reminder Checker & Sender

Original n8n title: Context-aware Agent - Reminder Automation

Context-Aware Agent - Reminder Automation. Uses httpRequest, executeCommand. Scheduled trigger; 8 nodes.

Cron / scheduled trigger★★★★☆ complexity8 nodesHTTP RequestExecute Command
AI & RAG Trigger: Cron / scheduled Nodes: 8 Complexity: ★★★★☆ Added:

This workflow follows the Executecommand → HTTP Request recipe pattern — see all workflows that pair these two integrations.

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": "Context-Aware Agent - Reminder Automation",
  "nodes": [
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours",
              "hoursInterval": 1
            }
          ]
        }
      },
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1,
      "position": [
        250,
        300
      ],
      "id": "schedule-trigger-1"
    },
    {
      "parameters": {
        "url": "http://localhost:8000/check-reminders",
        "options": {}
      },
      "name": "Check Reminders",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.1,
      "position": [
        450,
        300
      ],
      "id": "http-request-1"
    },
    {
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.count }}",
              "operation": "larger",
              "value2": 0
            }
          ]
        }
      },
      "name": "Has Reminders?",
      "type": "n8n-nodes-base.if",
      "typeVersion": 1,
      "position": [
        650,
        300
      ],
      "id": "if-node-1"
    },
    {
      "parameters": {
        "functionCode": "// Process each reminder\nconst reminders = items[0].json.reminders;\nconst processedReminders = [];\n\nfor (const reminder of reminders) {\n  processedReminders.push({\n    json: {\n      event: reminder.event,\n      date: reminder.date,\n      time: reminder.time,\n      message: reminder.message,\n      hours_until: reminder.hours_until\n    }\n  });\n}\n\nreturn processedReminders;"
      },
      "name": "Process Reminders",
      "type": "n8n-nodes-base.function",
      "typeVersion": 1,
      "position": [
        850,
        200
      ],
      "id": "function-node-1"
    },
    {
      "parameters": {
        "url": "http://localhost:8000/reminder",
        "options": {},
        "bodyParametersUi": {
          "parameter": [
            {
              "name": "event_name",
              "value": "={{ $json.event }}"
            },
            {
              "name": "event_date",
              "value": "={{ $json.date }}"
            },
            {
              "name": "event_time",
              "value": "={{ $json.time }}"
            },
            {
              "name": "details",
              "value": "Automatic reminder from n8n workflow"
            }
          ]
        }
      },
      "name": "Send Reminder",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.1,
      "position": [
        1050,
        200
      ],
      "id": "http-request-2"
    },
    {
      "parameters": {
        "content": "## Context-Aware Agent - Reminder Workflow\n\n**Purpose:** Automatically check for upcoming events and send reminders\n\n**Frequency:** Every hour\n\n**Process:**\n1. Check backend for upcoming events (within 24 hours)\n2. If reminders found, process each one\n3. Send reminder notification via API\n4. Log results\n\n**Configuration:**\n- Backend URL: http://localhost:8000\n- Check interval: 1 hour\n- Reminder window: 24 hours\n\n**Setup Instructions:**\n1. Import this workflow into n8n\n2. Ensure backend server is running\n3. Activate the workflow\n4. Monitor execution logs",
        "height": 400,
        "width": 350
      },
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        140,
        480
      ],
      "id": "sticky-note-1"
    },
    {
      "parameters": {
        "mode": "logToConsole",
        "message": "=Processed {{ $json.reminders.length }} reminders"
      },
      "name": "Log Results",
      "type": "n8n-nodes-base.executeCommand",
      "typeVersion": 1,
      "position": [
        1250,
        200
      ],
      "id": "log-node-1"
    },
    {
      "parameters": {
        "mode": "logToConsole",
        "message": "No reminders to send at this time"
      },
      "name": "Log No Reminders",
      "type": "n8n-nodes-base.executeCommand",
      "typeVersion": 1,
      "position": [
        850,
        400
      ],
      "id": "log-node-2"
    }
  ],
  "connections": {
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Check Reminders",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Reminders": {
      "main": [
        [
          {
            "node": "Has Reminders?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Has Reminders?": {
      "main": [
        [
          {
            "node": "Process Reminders",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Log No Reminders",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Process Reminders": {
      "main": [
        [
          {
            "node": "Send Reminder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Reminder": {
      "main": [
        [
          {
            "node": "Log Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {},
  "staticData": null,
  "tags": [],
  "versionId": "1.0.0"
}
Pro

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

About this workflow

Context-Aware Agent - Reminder Automation. Uses httpRequest, executeCommand. Scheduled trigger; 8 nodes.

Source: https://github.com/anisha-mg/Memora/blob/c3452db3f1f6307fdc916a2b46fcd3feed08d9e2/n8n/reminder_workflow.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

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

AI & RAG

This workflow automates the creation of a daily sports podcast from your favorite news sources. It fetches articles, uses AI to write a digest and a two-person dialogue, and produces a single, merged

Google Gemini Chat, RSS Feed Read, Execute Command +4
AI & RAG

My workflow 9. Uses executeWorkflowTrigger, googleSheets, httpRequest, executeCommand. Scheduled trigger; 28 nodes.

Execute Workflow Trigger, Google Sheets, HTTP Request +5
AI & RAG

Scale short-form content without scaling your team. This template turns idea discovery → prompt & text generation → Veo-3 video rendering → vertical formatting → multi-channel publishing into one cohe

YouTube, Google Gemini Chat, Output Parser Structured +6
AI & RAG

Master Agent - Orchestrator. Uses httpRequest, telegram, telegramTrigger. Scheduled trigger; 46 nodes.

HTTP Request, Telegram, Telegram Trigger
AI & RAG

Reputation Engine — Content Research Agent. Uses httpRequest. Scheduled trigger; 45 nodes.

HTTP Request