8
n8n 中文网amn8n.com

从Google Sheets向Slack发送面试后反馈提醒(含邮件备用方案)

中级

这是一个HR, Multimodal AI领域的自动化工作流,包含 9 个节点。主要使用 If, Gmail, Slack, GoogleSheets, ScheduleTrigger 等节点。 使用Google Sheets、Slack和Gmail自动化面试后反馈提醒

前置要求
  • Google 账号和 Gmail API 凭证
  • Slack Bot Token 或 Webhook URL
  • Google Sheets API 凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "kLHXGgGMQNnfjVW8",
  "meta": {
    "instanceId": "14e4c77104722ab186539dfea5182e419aecc83d85963fe13f6de862c875ebfa",
    "templateCredsSetupCompleted": true
  },
  "name": "从 Google Sheets 向 Slack 发送面试后反馈提醒(含邮件备用方案)",
  "tags": [],
  "nodes": [
    {
      "id": "3c94fc35-7f70-44f8-8084-74ef9e86305e",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        -20
      ],
      "parameters": {
        "width": 1620,
        "height": 560,
        "content": "## 从 Google Sheets 向 Slack 发送面试后反馈提醒(含邮件备用方案)"
      },
      "typeVersion": 1
    },
    {
      "id": "7915c9b3-beea-41c6-a1d8-34dd1a5b52c1",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -180,
        580
      ],
      "parameters": {
        "width": 1620,
        "height": 380,
        "content": "## 描述:"
      },
      "typeVersion": 1
    },
    {
      "id": "38bcc7d4-df73-4ccb-a7a0-618540a48310",
      "name": "每日提醒触发器",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -120,
        160
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 18
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "ee420d16-40b5-4faf-9501-bc9a8228ec04",
      "name": "获取面试反馈数据",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        120,
        160
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1780789038,
          "cachedResultUrl": "",
          "cachedResultName": "Interview_Feedback"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1cQ-TBf3-dqo7njDYzYpxpASYFvEp8lIzH7vpIqTLcwc",
          "cachedResultUrl": "",
          "cachedResultName": "N8N_Email_Attachment"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "zkQXt1viHat7vaB3",
          "name": "Google Sheets account 6"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "3440d46a-fd6b-428c-a77b-06b03b522847",
      "name": "检查是否已提交反馈",
      "type": "n8n-nodes-base.if",
      "position": [
        360,
        160
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "28cdc419-2495-4936-bdee-f871ba07cc2d",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json[\"Feedback Submitted (Y/N)\"] }}",
              "rightValue": "Y"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "c9fff58b-e8f0-40b7-90b1-c6fb63416ef0",
      "name": "检查 Slack ID",
      "type": "n8n-nodes-base.if",
      "position": [
        640,
        180
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "42475361-d80f-44c0-b7b6-b3bd15a6281e",
              "operator": {
                "type": "string",
                "operation": "empty",
                "singleValue": true
              },
              "leftValue": "={{ $json[\"Candidate Slack Id\"] }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "f2ac87d5-06d8-417c-aeed-f41fb49085e1",
      "name": "发送 Slack 提醒",
      "type": "n8n-nodes-base.slack",
      "position": [
        940,
        300
      ],
      "webhookId": "6d603894-f9e9-4cf8-8f53-f69810fa4e78",
      "parameters": {
        "text": "={{ $json[\"Areas of Improvement\"] }}",
        "user": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json[\"Candidate Slack Id\"] }}"
        },
        "select": "user",
        "otherOptions": {}
      },
      "credentials": {
        "slackApi": {
          "id": "HlObxWRUmnuebuJP",
          "name": "Interview_feedback_Slack"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "3564776b-8617-4857-95b7-c12ba50a3268",
      "name": "发送邮件提醒",
      "type": "n8n-nodes-base.gmail",
      "position": [
        940,
        60
      ],
      "webhookId": "9ec6e88c-d28e-460f-bc29-ff97b4024526",
      "parameters": {
        "sendTo": "={{ $json[\"Candidate Email\"] }}",
        "message": "={{ $json[\"Areas of Improvement\"] }}",
        "options": {
          "appendAttribution": false
        },
        "subject": "={{ $json.Recommendation }}",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "YqeBbKp4FvFiADc0",
          "name": "Gmail account 7"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "c6513c53-c950-4eb8-bb75-d21167549b3a",
      "name": "更新提醒状态",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1200,
        180
      ],
      "parameters": {
        "columns": {
          "value": {
            "Position": "={{ $('Check for Slack ID').item.json.Position }}",
            "Strengths": "={{ $('Check for Slack ID').item.json.Strengths }}",
            "Interview ID": "={{ $('Check for Slack ID').item.json[\"Interview ID\"] }}",
            "Candidate Name": "={{ $('Check for Slack ID').item.json[\"Candidate Name\"] }}",
            "Interview Date": "={{ $('Check for Slack ID').item.json[\"Interview Date\"] }}",
            "Rating (1–5)": "={{ $('Check for Slack ID').item.json[\"Rating (1–5)\"] }}",
            "Recommendation": "={{ $('Check for Slack ID').item.json.Recommendation }}",
            "Candidate Email": "={{ $('Check for Slack ID').item.json[\"Candidate Email\"] }}",
            "Interview Stage": "={{ $('Check for Slack ID').item.json[\"Interview Stage\"] }}",
            "Interviewer Name": "={{ $('Check for Slack ID').item.json[\"Interviewer Name\"] }}",
            "Skills Evaluated": "={{ $('Check for Slack ID').item.json[\"Skills Evaluated\"] }}",
            "Candidate Slack Id": "={{ $('Check for Slack ID').item.json[\"Candidate Slack Id\"] }}",
            "Additional Comments": "={{ $('Check for Slack ID').item.json[\"Additional Comments\"] }}",
            "Areas of Improvement": "={{ $('Check for Slack ID').item.json[\"Areas of Improvement\"] }}",
            "Feedback Submitted (Y/N)": "=Y"
          },
          "schema": [
            {
              "id": "Interview ID",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Interview ID",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Candidate Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Candidate Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Candidate Email",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Candidate Email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Candidate Slack Id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Candidate Slack Id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Interviewer Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Interviewer Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Interview Date",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Interview Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Interview Stage",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Interview Stage",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Position",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Position",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Skills Evaluated",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Skills Evaluated",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Rating (1–5)",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Rating (1–5)",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Strengths",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Strengths",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Areas of Improvement",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Areas of Improvement",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Recommendation",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Recommendation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Additional Comments",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Additional Comments",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Feedback Submitted (Y/N)",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Feedback Submitted (Y/N)",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Feedback Submitted (Y/N)"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1780789038,
          "cachedResultUrl": "",
          "cachedResultName": "Interview_Feedback"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1cQ-TBf3-dqo7njDYzYpxpASYFvEp8lIzH7vpIqTLcwc",
          "cachedResultUrl": "",
          "cachedResultName": "N8N_Email_Attachment"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "zkQXt1viHat7vaB3",
          "name": "Google Sheets account 6"
        }
      },
      "typeVersion": 4.6,
      "alwaysOutputData": true
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "254a0e91-bb2b-4271-8036-a3908acde0ae",
  "connections": {
    "Check for Slack ID": {
      "main": [
        [
          {
            "node": "Send Email Reminder",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Slack Reminder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Email Reminder": {
      "main": [
        [
          {
            "node": "Update Reminder Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Slack Reminder": {
      "main": [
        [
          {
            "node": "Update Reminder Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Daily Reminder Trigger": {
      "main": [
        [
          {
            "node": "Fetch Interview Feedback Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Reminder Status": {
      "main": [
        []
      ]
    },
    "Fetch Interview Feedback Data": {
      "main": [
        [
          {
            "node": "Check If Feedback Is Submitted",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check If Feedback Is Submitted": {
      "main": [
        [],
        [
          {
            "node": "Check for Slack ID",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - 人力资源, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量9
分类2
节点类型6
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

作者
WeblineIndia

WeblineIndia

@weblineindia

A Leading Software Engineering, Consulting & Outsourcing Services Company in USA & India serving Clients Globally since 1999.

外部链接
在 n8n.io 查看

分享此工作流