AutomationFlowsEmail & Gmail › Onboard New Employees with Monday.com, Asana, Zoom, and Gmail

Onboard New Employees with Monday.com, Asana, Zoom, and Gmail

ByRahul Joshi @rahul08 on n8n.io

Automate your new employee onboarding process by instantly creating structured onboarding tasks, scheduling an intro meeting, updating HR records, and notifying stakeholders — all triggered by a single status change in Monday.com. 🚀 This automation ensures every new joiner…

Cron / scheduled trigger★★★★☆ complexity12 nodesMonday.comAsanaZoomGmail
Email & Gmail Trigger: Cron / scheduled Nodes: 12 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #12267 — we link there as the canonical source.

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
{
  "id": "JIlw9lSYaoxAGNkK",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Onboard new employees using Zoom, Asana, and Monday.com",
  "tags": [],
  "nodes": [
    {
      "id": "generated-10f47ecc-1220-4e31-997d-f4b05bd8c5d4",
      "name": "Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        -1072
      ],
      "parameters": {
        "width": 536,
        "height": 688,
        "content": "## Onboard new employees using Zoom, Asana, and Monday.com - Workflow Overview\n\n### How it works\n\nThis workflow automates the onboarding process for newly joined employees using Monday.com as the source of truth. It runs on a schedule and checks for employees whose status is marked as \u201cJoined\u201d and not yet processed.\n\nFor each eligible employee, the workflow creates an onboarding task in Asana with a predefined checklist, sends a personalized welcome email via Gmail, and schedules a Zoom introduction meeting. Once the Zoom meeting is created, the join link is automatically added back to the employee\u2019s item in Monday.com.\n\nFinally, the workflow updates the employee\u2019s status to \u201cProcessed\u201d to ensure the same record is not handled again in future runs.\n\n### Setup steps\n\n1. Connect your Monday.com account and update the board ID and column IDs to match your board.\n2. Configure Asana credentials and select the project and assignee for onboarding tasks.\n3. Connect Gmail and customize the welcome email content if needed.\n4. Connect your Zoom account to enable automatic meeting creation.\n5. Review the schedule trigger timing and adjust it based on how often you want onboarding to run.\n"
      }
    },
    {
      "id": "generated-b0f31eca-fcd4-444d-b332-5da6bd10dcbc",
      "name": "Trigger & Data Retrieval",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -608,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 672,
        "height": 352,
        "content": "### Scheduling and employee detection\n\nThis workflow runs on a schedule and fetches employees from Monday.com whose status is marked as Joined and not yet processed."
      }
    },
    {
      "id": "generated-14689c7b-495b-4670-9d5a-90d004c1ccf1",
      "name": "Task Creation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -176
      ],
      "parameters": {
        "color": 7,
        "width": 540,
        "height": 360,
        "content": "### Task Creation and Welcome Email\n\nCreates an onboarding checklist task in Asana and sends a personalized welcome email to the new employee.\n"
      }
    },
    {
      "id": "generated-a8b0895f-f975-4052-97d9-de304746bbc1",
      "name": "Intro Meeting & Update",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        688,
        -304
      ],
      "parameters": {
        "color": 7,
        "width": 560,
        "height": 656,
        "content": "### Intro Meeting and Updates\n\nSchedules a 30-minute Zoom introductory meeting for the new employee.\nUpdates Zoom link and marks employee as processed in Monday.com.\n\n"
      }
    },
    {
      "id": "e8a34d15-f06a-4366-b6bd-917db18d92d8",
      "name": "Update Employee Zoom Link",
      "type": "n8n-nodes-base.mondayCom",
      "position": [
        960,
        -96
      ],
      "parameters": {
        "value": "={\n  \"url\": \"{{ $json.join_url }}\",\n  \"text\": \"Join Intro Call\"\n}\n",
        "itemId": "={{ $('Fetch joined employees from Monday.com').item.json.id }}",
        "boardId": "5025720609",
        "columnId": "link_mkyxc6hk",
        "resource": "boardItem",
        "operation": "changeColumnValue"
      },
      "credentials": {
        "mondayComApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "62465c20-8297-4604-9dbc-282b868f4453",
      "name": "Filter \u2013 Skip Already Processed Employees",
      "type": "n8n-nodes-base.filter",
      "position": [
        -96,
        16
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 3,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "8d284e3a-3d3e-49c8-9e02-fa6a17df5110",
              "operator": {
                "type": "string",
                "operation": "notEquals"
              },
              "leftValue": "={{ $json.column_values[7].text }}",
              "rightValue": "=Processed"
            }
          ]
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "3c31f873-b65f-47f4-a0d5-e3d264b83491",
      "name": "Check for newly joined employees",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -560,
        16
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 1
            }
          ]
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "1b66453f-2345-4f5d-b553-f805b3853da7",
      "name": "Create onboarding task in Asana",
      "type": "n8n-nodes-base.asana",
      "position": [
        192,
        16
      ],
      "parameters": {
        "name": "=Onboarding \u2013 {{ $json.column_values[1].text }}",
        "workspace": "1205967598025927",
        "authentication": "oAuth2",
        "otherProperties": {
          "notes": "=New employee onboarding checklist.\n\nEmployee Name:\n{{ $json.column_values[1].text }}\n\nTasks to complete:\n\u2022 Create company email\n\u2022 Grant tool access\n\u2022 Share policies & handbook\n\u2022 Assign mentor\n\u2022 Schedule intro meetings\n",
          "due_on": "={{ $now }}",
          "assignee": "1212557659831213",
          "projects": [
            "1212555032005130"
          ]
        }
      },
      "credentials": {
        "asanaOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "593d5711-0caa-498c-a3af-00b298d8e6c9",
      "name": "Schedule Zoom intro meeting",
      "type": "n8n-nodes-base.zoom",
      "position": [
        736,
        16
      ],
      "parameters": {
        "topic": "=Welcome & Team Introduction \u2013 {{ $('Fetch joined employees from Monday.com').item.json.column_values[1].text }}",
        "authentication": "oAuth2",
        "additionalFields": {
          "duration": 30,
          "startTime": "={{ new Date(Date.now() + 86400000).toISOString() }}\n"
        }
      },
      "credentials": {
        "zoomOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "7bc67075-f97d-4b84-85e0-765577a6900e",
      "name": "Send welcome email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        480,
        16
      ],
      "parameters": {
        "sendTo": "={{ $('Fetch joined employees from Monday.com').item.json.column_values[6].text }}",
        "message": "=Hi {{ $('Fetch joined employees from Monday.com').item.json.column_values[1].text }},  \n\nWelcome to the team! We\u2019re excited to have you join us. \n\nYour onboarding process has been initiated. \nYou\u2019ll soon receive access details and next steps.\n\nLooking forward to working with you!  \u2013 HR Team",
        "options": {},
        "subject": "=Welcome to the Team,{{ $('Fetch joined employees from Monday.com').item.json.column_values[1].text }}! \ud83c\udf89",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "380226fc-eed6-4de5-a449-6a1e759e4ea3",
      "name": "Fetch joined employees from Monday.com",
      "type": "n8n-nodes-base.mondayCom",
      "position": [
        -320,
        16
      ],
      "parameters": {
        "boardId": "5025720609",
        "columnId": "project_status",
        "resource": "boardItem",
        "operation": "getByColumnValue",
        "returnAll": true,
        "columnValue": "Joined"
      },
      "credentials": {
        "mondayComApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "deb06ff4-0f1b-45bd-99cf-8b65b7c98e69",
      "name": "Mark employee as processed",
      "type": "n8n-nodes-base.mondayCom",
      "position": [
        992,
        144
      ],
      "parameters": {
        "value": "={\n  \"label\": \"Processed\"\n}\n",
        "itemId": "={{ $('Fetch joined employees from Monday.com').item.json.id }}",
        "boardId": "5025720609",
        "columnId": "color_mkz3c6wx",
        "resource": "boardItem",
        "operation": "changeColumnValue"
      },
      "credentials": {
        "mondayComApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e6157a85-054c-49c6-b9da-57965519b16d",
  "connections": {
    "Send welcome email": {
      "main": [
        [
          {
            "node": "Schedule Zoom intro meeting",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Zoom intro meeting": {
      "main": [
        [
          {
            "node": "Update Employee Zoom Link",
            "type": "main",
            "index": 0
          },
          {
            "node": "Mark employee as processed",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create onboarding task in Asana": {
      "main": [
        [
          {
            "node": "Send welcome email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check for newly joined employees": {
      "main": [
        [
          {
            "node": "Fetch joined employees from Monday.com",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch joined employees from Monday.com": {
      "main": [
        [
          {
            "node": "Filter \u2013 Skip Already Processed Employees",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter \u2013 Skip Already Processed Employees": {
      "main": [
        [
          {
            "node": "Create onboarding task in Asana",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

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

Automate your new employee onboarding process by instantly creating structured onboarding tasks, scheduling an intro meeting, updating HR records, and notifying stakeholders — all triggered by a single status change in Monday.com. 🚀 This automation ensures every new joiner…

Source: https://n8n.io/workflows/12267/ — original creator credit. Request a take-down →

More Email & Gmail workflows → · Browse all categories →

Related workflows

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

Email & Gmail

Streamline IT and operations change management by automating approval routing, Jira issue creation, audit logging, and real-time Slack alerts. This workflow ensures faster reviews, traceable approvals

Monday.com, Slack, Jira +2
Email & Gmail

Streamline IT and operations change management by automating approval routing, Jira issue creation, audit logging, and real-time Slack alerts. This workflow ensures faster reviews, traceable approvals

Monday.com, Slack, Jira +2
Email & Gmail

Keep your product and project teams perfectly aligned by automatically syncing task dependencies between Jira and Monday.com. This workflow ensures real-time visibility into cross-platform blockers an

Monday.com, Gmail, Jira +1
Email & Gmail

This workflow automates interview scheduling by orchestrating Calendly, Zoom, Asana, and Gmail into a single, reliable hiring pipeline. When a candidate books an interview, the automation ensures the

Asana, Error Trigger, Gmail +2
Email & Gmail

YOUR_ID 4. Uses gmail, googleDrive, googleSheets, httpRequest. Scheduled trigger; 53 nodes.

Gmail, Google Drive, Google Sheets +1