AutomationFlowsAI & RAG › My Gmail Calendar

My Gmail Calendar

My_gmail_calendar. Uses executeWorkflowTrigger, agent, lmChatGoogleGemini, memoryBufferWindow. Event-driven trigger; 6 nodes.

Event trigger★★☆☆☆ complexityAI-powered6 nodesExecute Workflow TriggerAgentGoogle Gemini ChatMemory Buffer WindowGoogle Calendar Tool
AI & RAG Trigger: Event Nodes: 6 Complexity: ★★☆☆☆ AI nodes: yes Added:

This workflow follows the Agent → Execute Workflow Trigger 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": "My_gmail_calendar",
  "nodes": [
    {
      "parameters": {
        "workflowInputs": {
          "values": [
            {
              "name": "text"
            },
            {
              "name": "session_id"
            }
          ]
        }
      },
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "typeVersion": 1.1,
      "position": [
        -448,
        -16
      ],
      "id": "YOUR_NODE_ID_1",
      "name": "When Executed by Another Workflow"
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "={{ $json.text }}",
        "options": {
          "systemMessage": "=You are a calendar assistant who can easily create events in the google calendar.\n\nYou have to provide with the start date  and the end date.\n\nMake sure to understand the requirement and create event in calendar using Create even tool positively.\n\nThe current date and time is {{ $now }}.\n\nAdditionally you have to provide with summary and other details for the calendar which your tool might need.\n\n\nIn case you have to get the events, use get event tools and not the create event one, you can get multiple events as well.\n\n\nMake sure that you provide the response in a good summarize manner without any links etc."
        }
      },
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 2.2,
      "position": [
        -16,
        -48
      ],
      "id": "YOUR_NODE_ID_2",
      "name": "AI Agent"
    },
    {
      "parameters": {
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "typeVersion": 1,
      "position": [
        -256,
        240
      ],
      "id": "YOUR_NODE_ID_3",
      "name": "Google Gemini Chat Model"
    },
    {
      "parameters": {
        "sessionIdType": "customKey",
        "sessionKey": "=00-{{ $json.session_id }}",
        "contextWindowLength": 8
      },
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "typeVersion": 1.3,
      "position": [
        -64,
        240
      ],
      "id": "YOUR_NODE_ID_4",
      "name": "Simple Memory"
    },
    {
      "parameters": {
        "calendar": {
          "__rl": true,
          "value": "YOUR_EMAIL@gmail.com",
          "mode": "list",
          "cachedResultName": "YOUR_EMAIL@gmail.com"
        },
        "start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
        "end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
        "useDefaultReminders": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', ``, 'boolean') }}",
        "additionalFields": {
          "summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}"
        }
      },
      "type": "n8n-nodes-base.googleCalendarTool",
      "typeVersion": 1.3,
      "position": [
        128,
        224
      ],
      "id": "YOUR_NODE_ID_5",
      "name": "Create an event"
    },
    {
      "parameters": {
        "operation": "getAll",
        "calendar": {
          "__rl": true,
          "value": "YOUR_EMAIL@gmail.com",
          "mode": "list",
          "cachedResultName": "YOUR_EMAIL@gmail.com"
        },
        "returnAll": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}",
        "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}",
        "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}",
        "options": {}
      },
      "type": "n8n-nodes-base.googleCalendarTool",
      "typeVersion": 1.3,
      "position": [
        352,
        224
      ],
      "id": "YOUR_NODE_ID_6",
      "name": "Get many events in Google Calendar",
      "credentials": {
        "googleCalendarOAuth2Api": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Create an event": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get many events in Google Calendar": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "YOUR_VERSION_ID",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "YOUR_WORKFLOW_ID",
  "tags": []
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

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

About this workflow

My_gmail_calendar. Uses executeWorkflowTrigger, agent, lmChatGoogleGemini, memoryBufferWindow. Event-driven trigger; 6 nodes.

Source: https://github.com/akagamikaizoku/n8n-tg-personal-assistant-workflow-multi-agent/blob/main/My_gmail_calendar.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

Calendar agent. Uses googleCalendarTool, memoryBufferWindow, agent, lmChatGoogleGemini. Event-driven trigger; 10 nodes.

Google Calendar Tool, Memory Buffer Window, Agent +2
AI & RAG

Gabarito SubAgente CS Aula 3. Uses executeWorkflowTrigger, agent, lmChatGoogleGemini, memoryBufferWindow. Event-driven trigger; 5 nodes.

Execute Workflow Trigger, Agent, Google Gemini Chat +2
AI & RAG

SubAgente CS. Uses executeWorkflowTrigger, agent, lmChatGoogleGemini, memoryBufferWindow. Event-driven trigger; 5 nodes.

Execute Workflow Trigger, Agent, Google Gemini Chat +2
AI & RAG

Finance Agent. Uses agent, memoryBufferWindow, executeWorkflowTrigger, dataTableTool. Event-driven trigger; 11 nodes.

Agent, Memory Buffer Window, Execute Workflow Trigger +2
AI & RAG

Homelab IT Agent. Uses dataTableTool, executeWorkflowTrigger, agent, lmChatGoogleGemini. Event-driven trigger; 11 nodes.

Data Table Tool, Execute Workflow Trigger, Agent +3