Planung und Erinnerungen für Leistungsbewertungen
Dies ist ein HR-Bereich Automatisierungsworkflow mit 16 Nodes. Hauptsächlich werden If, Set, Code, Slack, SplitOut und andere Nodes verwendet. Automatisierung des Leistungsbewertungsprozesses mit Google Sheets, Kalender, E-Mail und Slack
- •Slack Bot Token oder Webhook URL
- •Google Sheets API-Anmeldedaten
Verwendete Nodes (16)
Kategorie
{
"id": "rPl99EYLVHLCXg0B",
"meta": {
"instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
"templateCredsSetupCompleted": true
},
"name": "Performance Review Scheduler & Reminder",
"tags": [],
"nodes": [
{
"id": "ce6f4776-596d-498a-b3f6-2746d2e077ac",
"name": "Tägliche Prüfung um 8 Uhr",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-1568,
160
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.1
},
{
"id": "4a46b397-1c45-4f1c-9fd2-03922787e2ea",
"name": "Bewertungsplan abrufen",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1344,
160
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "name",
"value": "ReviewSchedule"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "YOUR_REVIEW_SPREADSHEET_ID"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "ScSS2KxGQULuPtdy",
"name": "Google Sheets- test"
}
},
"typeVersion": 4.2
},
{
"id": "427bb5c4-6675-4a32-b13d-acd17a748a57",
"name": "Anstehende Bewertungen filtern",
"type": "n8n-nodes-base.code",
"position": [
-1152,
160
],
"parameters": {
"jsCode": "const items = $input.all();\nconst today = $now.toDate();\nconst threeDaysLater = new Date(today);\nthreeDaysLater.setDate(today.getDate() + 3);\n\nconst upcomingReviews = items.filter(item => {\n const reviewDate = new Date(item.json.ReviewDate);\n return reviewDate >= today && reviewDate <= threeDaysLater && item.json.Status !== 'Completed';\n});\n\nconst todayReviews = upcomingReviews.filter(item => {\n const reviewDate = new Date(item.json.ReviewDate);\n return reviewDate.toDateString() === today.toDateString();\n});\n\nconst reminderReviews = upcomingReviews.filter(item => {\n const reviewDate = new Date(item.json.ReviewDate);\n return reviewDate.toDateString() !== today.toDateString();\n});\n\nreturn {\n upcomingReviews: upcomingReviews,\n todayReviews: todayReviews,\n reminderReviews: reminderReviews\n};"
},
"typeVersion": 2
},
{
"id": "86940cc8-365c-4045-b316-58a27f0ca209",
"name": "Bewertungen geplant?",
"type": "n8n-nodes-base.if",
"position": [
-944,
160
],
"parameters": {
"conditions": {
"number": [
{
"value1": "={{$json.upcomingReviews.length}}",
"operation": "larger"
}
]
}
},
"typeVersion": 1
},
{
"id": "f764fef2-2e57-4797-9252-edfee5648ec5",
"name": "In Elemente aufteilen",
"type": "n8n-nodes-base.splitOut",
"position": [
-752,
160
],
"parameters": {
"options": {},
"fieldToSplitOut": "upcomingReviews"
},
"typeVersion": 1
},
{
"id": "3e05bca6-7db2-4153-858d-3843e805ee2c",
"name": "Bewertungsdaten vorbereiten",
"type": "n8n-nodes-base.set",
"position": [
-544,
160
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "calendar_event",
"name": "calendarEventId",
"type": "string",
"value": "={{$json.CalendarEventId}}"
},
{
"id": "employee_name",
"name": "employeeName",
"type": "string",
"value": "={{$json.EmployeeName}}"
},
{
"id": "reviewer_name",
"name": "reviewerName",
"type": "string",
"value": "={{$json.ReviewerName}}"
},
{
"id": "review_date",
"name": "reviewDate",
"type": "string",
"value": "={{$json.ReviewDate}}"
},
{
"id": "review_type",
"name": "reviewType",
"type": "string",
"value": "={{$json.ReviewType}}"
},
{
"id": "employee_email",
"name": "employeeEmail",
"type": "string",
"value": "={{$json.EmployeeEmail}}"
},
{
"id": "reviewer_email",
"name": "reviewerEmail",
"type": "string",
"value": "={{$json.ReviewerEmail}}"
}
]
}
},
"typeVersion": 3.3
},
{
"id": "629584ef-1552-4f7f-af54-93131d0f4ff6",
"name": "E-Mail-Erinnerung senden",
"type": "n8n-nodes-base.emailSend",
"position": [
-352,
64
],
"webhookId": "dc3907f7-78c5-4990-a840-9155b7eb9b33",
"parameters": {
"options": {},
"subject": "=🎯 Performance Review Reminder - {{$json.employeeName}}",
"toEmail": "={{$json.employeeEmail}}, {{$json.reviewerEmail}}",
"fromEmail": "hr@yourcompany.com"
},
"credentials": {
"smtp": {
"id": "G1kyF8cSWTZ4vouN",
"name": "SMTP -test"
}
},
"typeVersion": 2.1
},
{
"id": "1e20e938-b64e-4c9f-ba21-9aa768446064",
"name": "Kalenderereignis aktualisieren",
"type": "n8n-nodes-base.googleCalendar",
"position": [
-352,
256
],
"parameters": {
"end": "2025-10-24T00:00:00",
"start": "2025-10-16T00:00:00",
"calendar": "primary",
"additionalFields": {}
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "6ldLmzzYtaqng4pw",
"name": "Google Calendar account - test"
}
},
"typeVersion": 1.2
},
{
"id": "fe4e328e-f85e-400c-97c4-33610d3a0cfe",
"name": "HR benachrichtigen auf Slack",
"type": "n8n-nodes-base.slack",
"position": [
-144,
160
],
"webhookId": "26fb8c97-1e61-43bc-ab08-46b83b156c21",
"parameters": {
"text": "=🎯 *Performance Review Reminder Sent*\n\n*Employee:* {{$json.employeeName}}\n*Reviewer:* {{$json.reviewerName}}\n*Review Type:* {{$json.reviewType}}\n*Scheduled Date:* {{$json.reviewDate}}\n\n📧 Reminder emails sent to both parties\n📅 Calendar event updated",
"user": {
"__rl": true,
"mode": "list",
"value": ""
},
"select": "user",
"otherOptions": {}
},
"credentials": {
"slackApi": {
"id": "MQ0fgwuS8AzfwFvy",
"name": "Slack account - test "
}
},
"typeVersion": 2.1
},
{
"id": "ee18e67d-1af3-48e0-b614-95b80fc80da0",
"name": "Bewertungsstatus aktualisieren",
"type": "n8n-nodes-base.googleSheets",
"position": [
64,
160
],
"parameters": {
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "name",
"value": "ReviewSchedule"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "YOUR_REVIEW_SPREADSHEET_ID"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "ScSS2KxGQULuPtdy",
"name": "Google Sheets- test"
}
},
"typeVersion": 4.2
},
{
"id": "3a012941-6f69-44f8-ace3-2368a75d76c3",
"name": "Notiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1600,
-80
],
"parameters": {
"color": 4,
"width": 176,
"height": 404,
"content": "## Daily morning check\n\nRuns at 8 AM every day"
},
"typeVersion": 1
},
{
"id": "46806887-42b2-438c-8b1a-1602abb5ed0d",
"name": "Notiz1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1408,
-80
],
"parameters": {
"color": 4,
"width": 192,
"height": 404,
"content": "## Fetches review schedule\n\nRetrieves all planned reviews"
},
"typeVersion": 1
},
{
"id": "d2559dee-a579-4173-ae68-d6cd86f20306",
"name": "Notiz2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1184,
-80
],
"parameters": {
"color": 4,
"width": 192,
"height": 404,
"content": "## Filters upcoming reviews\n\nChecks next 3 days"
},
"typeVersion": 1
},
{
"id": "318eb680-fba0-4aff-bf42-bf3fbac19020",
"name": "Notiz3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-976,
-80
],
"parameters": {
"color": 4,
"width": 192,
"height": 404,
"content": "## Validates schedule\n\nEnsures reviews exist"
},
"typeVersion": 1
},
{
"id": "dcfa2a1a-e180-4c48-b55e-259dc81c4bf6",
"name": "Notiz4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-768,
-80
],
"parameters": {
"color": 4,
"width": 320,
"height": 404,
"content": "## Processes each review\n\nSplits and prepares data"
},
"typeVersion": 1
},
{
"id": "0c5a911d-494f-4097-a102-0dc421af21b6",
"name": "Notiz5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-368,
-144
],
"parameters": {
"color": 4,
"width": 540,
"height": 580,
"content": "## Multi-channel notifications & tracking\n\nSends reminders via email, updates calendar, notifies HR, and logs status"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "45f2da8b-5c9e-4979-83b5-fa12aa5a3087",
"connections": {
"f764fef2-2e57-4797-9252-edfee5648ec5": {
"main": [
[
{
"node": "3e05bca6-7db2-4153-858d-3843e805ee2c",
"type": "main",
"index": 0
}
]
]
},
"fe4e328e-f85e-400c-97c4-33610d3a0cfe": {
"main": [
[
{
"node": "ee18e67d-1af3-48e0-b614-95b80fc80da0",
"type": "main",
"index": 0
}
]
]
},
"86940cc8-365c-4045-b316-58a27f0ca209": {
"main": [
[
{
"node": "f764fef2-2e57-4797-9252-edfee5648ec5",
"type": "main",
"index": 0
}
]
]
},
"ce6f4776-596d-498a-b3f6-2746d2e077ac": {
"main": [
[
{
"node": "4a46b397-1c45-4f1c-9fd2-03922787e2ea",
"type": "main",
"index": 0
}
]
]
},
"4a46b397-1c45-4f1c-9fd2-03922787e2ea": {
"main": [
[
{
"node": "427bb5c4-6675-4a32-b13d-acd17a748a57",
"type": "main",
"index": 0
}
]
]
},
"3e05bca6-7db2-4153-858d-3843e805ee2c": {
"main": [
[
{
"node": "629584ef-1552-4f7f-af54-93131d0f4ff6",
"type": "main",
"index": 0
},
{
"node": "1e20e938-b64e-4c9f-ba21-9aa768446064",
"type": "main",
"index": 0
}
]
]
},
"629584ef-1552-4f7f-af54-93131d0f4ff6": {
"main": [
[
{
"node": "fe4e328e-f85e-400c-97c4-33610d3a0cfe",
"type": "main",
"index": 0
}
]
]
},
"1e20e938-b64e-4c9f-ba21-9aa768446064": {
"main": [
[
{
"node": "fe4e328e-f85e-400c-97c4-33610d3a0cfe",
"type": "main",
"index": 0
}
]
]
},
"427bb5c4-6675-4a32-b13d-acd17a748a57": {
"main": [
[
{
"node": "86940cc8-365c-4045-b316-58a27f0ca209",
"type": "main",
"index": 0
}
]
]
}
}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Experte - Personalwesen
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Oneclick AI Squad
@oneclick-aiThe AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.
Diesen Workflow teilen