Templates / Onboard employees and manage Slack access with Google Sheets and Gmail

Onboard employees and manage Slack access with Google Sheets and Gmail

Ready for 3.0

by Muhammed Umar ✓ · 16 views · created 2026-07-09 · HR

Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.

Nodes used (9)

Google SheetsGmailSlack

What it does

Quick Overview This workflow automates HR onboarding by capturing new hires via a webhook, saving them to Google Sheets, emailing a Slack invite via Gmail, and notifying managers in Slack, then listening for Slack teamjoin events to add new hires to department channels and update onboarding status. How it works 1. Receives a POST webhook request from an HR form with new employee details and validates required fields. 2. Appends the employee record to a Google Sheets spreadsheet and assigns a department-based list of Slack channels plus a static Slack invite link. 3. Sends the new hire a welcome email through Gmail containing their start details and the Slack workspace invite link. 4. Sends a Slack direct message to a manager user with the new hire details and the channels they will be added to, then updates the Google Sheets row to “Invite Sent” with a timestamp and responds to the HR form. 5. Receives Slack Events API requests for the workspace and replies to urlverification challenges or immediately acknowledges real teamjoin events within 3 seconds. 6. Extracts the joining user’s Slack ID and email, looks up the matching employee row in Google Sheets, and resolves the department’s target channels. 7. For each target channel, fetches Slack channel IDs, invites the user to the channel, sends the user a welcome DM in Slack, and updates the Google Sheets row status to “Joined” with a timestamp. Setup 1. Create and connect credentials for Google Sheets OAuth2, Gmail OAuth2, and Slack OAuth2. 2. Prepare a Google Sheets spreadsheet (Sheet1) with columns for fullname, email, department, role, manageremail, startdate, status, slackinvitedat, and slackuserid, and update the spreadsheet ID/sheet selection if needed. 3. Update the static Slack invite link and the department-to-channel mapping in the workflow code so it matches your workspace channels. 4. Configure your HR form/dashboard to POST to the onboarding webhook URL (/webhook-test/onboard-employee for testing and /webhook/onboard-employee when active). 5. Create a Slack app with Events API enabled, subscribe to the teamjoin event, set the Request URL to the Slack events webhook, and invite the bot user into each target channel so it can add members.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.