AI/ML
How to Automate HR Offboarding with n8n Workflows
Overview
n8n detects terminated employees in BambooHR, sends an exit survey via Google Forms, revokes access, and notifies teams via Slack.
Prerequisites
n8n installed.
BambooHR account with API access.
Google Forms with webhook support.
Slack account with bot token.
Workflow Setup
1. Prepare n8n Environment
Navigate to http://localhost:5678 (or your n8n URL) and log in with your credentials. In the sidebar, click “Workflows,” then select “+ New” and name it (e.g., “Employee Offboarding”). Click “+” on the canvas to open the node selector.
2. Trigger Node: BambooHR
Node: BambooHR
Settings:
- Credentials: BambooHR API key
- Resource: Employee
- Operation: Get Many
- Query: status:terminated terminationDate>=TODAY
Output: Terminated employee data (e.g., {{ $json[0].workEmail }}).
3. Send Exit Survey Node: HTTP Request
Node: HTTP Request
Settings:
- URL: https://api.google.com/forms/<form-id>/responses
- Method: POST
- Body: { "email": "{{ $node["BambooHR"].json[0].workEmail }}", "trigger": "exit_survey" }
Output: Survey sent.
4. Revoke Access Node: HTTP Request
Node: HTTP Request
Settings:
- URL: https://<your-it-system>/api/revoke-access
- Method: POST
- Body: { "email": "{{ $node["BambooHR"].json[0].workEmail }}" }
Output: Access revoked.
5. Notify Teams Node: Slack
Node: Slack
Settings:
- Credentials: Slack Bot Token
- Channel: #hr-offboarding
- Text: {{ $node["BambooHR"].json[0].firstName }} {{ $node["BambooHR"].json[0].lastName }} has been offboarded.
Output: Teams notified.
Workflow Summary
- Flow: BambooHR → HTTP Request (survey) → HTTP Request (revoke) → Slack.
- Execution: ~15 seconds per offboarding.
Benefits
- Saves ~1 hour/offboarding on tasks.
- Ensures secure access revocation.
- Gathers valuable exit feedback.
Troubleshooting
- BambooHR Error: Check query syntax.
- Access Fail: Verify IT system API.
Ready to transform your business with our technology solutions? Contact Us today to Leverage Our AI/ML Expertise.
Comment