【n8n教程】:Send Email 节点,从零搭建你的自动邮件系统
先说结论:掌握 Send Email 节点 = 掌握 n8n 里 80% 的邮件自动化场景。无论是发送通知、日报、审批邮件,还是 AI 生成报告后自动发出,几乎都离不开它。
一、Send Email 节点是什么?能做什么?
**Send Email 节点:通过 SMTP 服务器发送邮件的输出节点。**它不依赖某个特定邮箱服务(Gmail、Outlook、企业邮箱都可以),只要对方支持 SMTP,就能用。
典型应用场景:
- • 定时发送日报、周报、监控告警
- • 表单提交后给用户发送确认邮件
- • 审批场景:给上级发审批邮件,对方点「同意/拒绝」后再继续工作流
- • AI 场景:让 LLM 生成报告,再用 Send Email 发给用户或团队
在 n8n 里,你可以用它来:
- • 单纯发送邮件(Send)
- • 发送邮件并挂起等待用户响应(Send and Wait for Response)
二、准备工作:先让 n8n 具备“发邮件”的能力
Send Email 节点走的是 SMTP 协议,所以必须先准备一个能发 SMTP 的邮箱账号,并在 n8n 中配置 Send Email 凭证(SMTP account)。
1. 你需要准备这些信息
从你的邮箱服务商文档里拿到:
- • SMTP 服务器地址(Host),如:
smtp.gmail.com、smtp.office365.com - • 端口(Port)
- • 常见:
- • 465:SSL/TLS
- • 587:STARTTLS
- • 用户名(User):一般就是邮箱地址
- • 密码(Password):很多服务要求应用专用密码,不是你的登录密码
- • 是否启用 SSL/TLS、是否禁用 STARTTLS 等安全选项
2. 在 n8n 里创建 Send Email 凭证
- 1. 打开 n8n 编辑器,左下角点击 Credentials / 凭证。
- 2. 新建凭证类型:Send Email / SMTP account。
- 3. 填写:
- • User:邮箱地址
- • Password:登录密码或应用专用密码
- • Host / Port:按邮箱服务商文档填写
- • SSL/TLS、Disable STARTTLS:按服务商要求设置(例如:465 → 开启 SSL;587 → 关闭 SSL,使用 STARTTLS)。
- 4. 保存。
之后,在 Send Email 节点中选中这个凭证,就可以真正发邮件了。
三、5 分钟发出你的第一封自动邮件(超详细步骤)
这里做一个最简单的测试工作流:手动触发 → 发送一封纯文本测试邮件。
步骤 1:新建工作流 + 手动触发节点
- 1. 在 n8n 中点击 “New Workflow”。
- 2. 画布默认会有一个 Manual Trigger(手动触发) 节点。
- • 如果没有,在左侧节点列表搜索 “Manual Trigger”,拖到画布即可。
步骤 2:添加 Send Email 节点
- 1. 点击 Manual Trigger 右侧的 “+” 号。
- 2. 搜索 Send Email。
- 3. 选择 Send Email(Core node),添加到画布。
Send Email 节点大致界面如下(字段布局类似):

步骤 3:配置 Send Email 的核心参数
选中 Send Email 节点,在右侧参数面板中依次设置:
- 1. Credential to connect with(凭证)
- • 选择刚刚创建的 SMTP 凭证(例如:
My SMTP Account)。
- 2. Operation(操作)
- • 先选 Send,只发一封邮件,不等待用户反馈。
- 3. From Email(发件人)
- • 可以只写邮箱:
[email protected] - • 也可以带名字:
张三 <[email protected]>(推荐,看起来更专业)
- 4. To Email(收件人)
- • 单个收件人:
[email protected] - • 多个收件人用逗号分隔:
小李 <[email protected]>, [email protected] - • 同样格式也适用于 CC / BCC 字段(文档中特别说明)。
- 5. Subject(主题)
- 6. Email Format(邮件格式)
- • Text:纯文本
- • HTML:HTML 格式(支持标签)
- • Both:同时带 Text + HTML,由收件人客户端决定显示哪个
对于第一次测试,建议选 Text。
7. Text(邮件正文)
- 填:你好,这是一封由 n8n 自动发送的测试邮件。
其他先保持默认即可。
步骤 4:执行节点,检查邮件是否到达
- 1. 点击画布顶部的 Execute Workflow,或者在 Send Email 节点上点 “Execute Node”。
- 2. 无报错的话,打开你填写的收件人邮箱,检查是否收到邮件。
- 3. 如果报错,多半是:
- • SMTP Host / Port 错误
- • 账号或密码错误(尤其是应用专用密码)
- • SSL / STARTTLS 配置和服务端不匹配
能顺利发出这封测试邮件,说明 n8n + SMTP 环境已经配置 OK,之后所有高级玩法都是在这个基础上叠加。
四、Send Email 常用参数与选项详解(实战视角)
这一节只讲对初学者最重要、最常用的部分,避免被一堆参数吓到。
1. Operation:Send vs Send and Wait for Response
- • Send
- • 作用:简单地发一封邮件,发完立刻继续后续节点。
- • 常见用途:通知、日报、系统告警、报告推送。
- • Send and Wait for Response
- • 作用:发出邮件后,工作流暂停,等待收件人完成某种操作(点击按钮 / 填表)。
- • 适合做:
- • 审批流(请假、报销、采购)
- • 用户确认(确认删除数据 / 启用功能)
- • 收集附加信息(补充原因、备注等)
后面会专门用一节讲这个高级用法。
2. 发件人 / 收件人相关字段
这些字段都支持 名字 <邮箱> 的格式,并且 To / CC / BCC 支持多个邮箱用逗号分隔。
- • From Email
- • 发件人邮箱及名称。
- • 建议用:
你的名字 <你的邮箱>,看起来更正规,也方便用户识别。
- • To Email
- • 必填,支持单个或多个收件人。
- • 多个示例:
[email protected], "产品经理" <[email protected]>
- • CC Email / BCC Email
- • 抄送和密送,格式与 To Email 完全相同。
3. Email Format:Text / HTML / Both
- • Text
- • 最简单,所有客户端都兼容。
- • 不支持加粗、颜色、表格等,只能纯文本。
- • HTML
- 支持 `<p>、<b>、<a>、<table>` 等 HTML 标签,适合做精美排版邮件。
- • Both
- • 同时带 Text + HTML 两份内容。
- • 客户端会自动选择显示 HTML 或 Text(通常显示 HTML)。
实战建议:
- • 系统告警、简单通知:Text
- • 报表、营销、对外用户邮件:HTML / Both
4. Attachments:添加附件 / 内嵌图片
Attachments 字段不是直接选文件,而是填写 二进制属性名。
常用方式:
- 1. 使用 Read/Write Files from Disk 节点或 HTTP Request 节点,读取文件,文件会出现在当前 item 的某个 binary 属性上(如
data)。 - 2. 在 Send Email 的 Attachments 字段填入这个属性名,比如:
data。 - 3. 多个附件用逗号分隔:
file1, file2, invoicePdf。
如果要在 HTML 正文中嵌入图片:
- • 附件属性名里配置
cid:image_1,然后在 HTML 正文里写:
<img src="cid:image_1">。
5. Reply To:回复地址
- • 用于指定“用户点回复时,邮件要回到哪个地址”。
- • 可以和 From 不一样,比如:
- • From:系统发件地址
[email protected] - • Reply To:客服地址
[email protected]
适合场景:发件用系统邮箱,回复由人工邮箱来接收处理。
6. Append n8n Attribution:是否附带“由 n8n 发送”尾注
- • 如果打开,会在邮件末尾加上:
This email was sent automatically with n8n。 - • 正式对外用户邮件通常建议关掉。
7. Ignore SSL Issues:是否忽略 SSL / TLS 证书错误
- • 默认应当关闭(更安全)。
- • 只有在你非常确定环境安全且明确知道是证书配置问题时,临时开启排查问题。
五、「Send and Wait for Response」:邮件里的审批 & 表单
当 Operation 选择 Send and Wait for Response 时,Send Email 节点会变成一个“发邮件 + 等待动作”的组合节点。
n8n 会为收件人生成一个可交互界面(按钮或表单),并在对方完成动作后,再继续执行后续节点。
1. Response Type 三种模式
文档提供 3 种响应类型:
- 1. Approval(审批)
- 2. Free Text(纯文本表单)
- 3. Custom Form(自定义表单)
1)Approval:一键审批
适合做:
- • 请假审批、报销审批
- • 功能开关确认(如:是否删除某个大批量数据)
关键参数:
- • Type of Approval
- • 单按钮:只有「Approve」
- • 双按钮:
Approve + Decline
- • Button Label
- • 自定义按钮文案,例如:
- • Approve →
同意 - • Decline →
拒绝
- • Button Style
- • Primary / Secondary,用于视觉区分(主按钮 / 次按钮)。
- • Limit Wait Time
- • 设置超时时间(间隔或具体时间点):
- • 在限定时间内未操作 → 工作流自动继续,方便你在后面加一个分支:
超时未审批。
2)Free Text:简单文本回复表单
适合做:
- • 收集一次性反馈、补充说明
- • 让用户简单回答「原因」「备注」
关键参数:
- • Message Button Label
- • Response Form Title / Description
- • Response Form Button Label
- • Limit Wait Time / Append n8n Attribution
3)Custom Form:自定义多字段表单
适合做:
- • 小型问卷
- • 复杂审批表(如:费用类型、金额、说明、附件链接等)
核心点:
- • 可以点 Add Form Element 增加多个字段。
- • 每个字段的配置方式与 Form Trigger 节点的表单元素一致。
- • 同样支持:
- • Message Button Label
- • Response Form Title / Description
- • Response Form Button Label
- • Limit Wait Time
- • Append n8n Attribution
2. 一个典型审批流的思路(思路级别)
虽然这里不直接给 JSON,但可以按这个结构设计:
- 1. 触发节点(Manual Trigger / Webhook / Form Trigger 等)。
- 2. Send Email:
- • Operation:Send and Wait for Response
- • Response Type:Approval
- • 按钮文案:
同意 / 拒绝
- 3. 后面接一个 If 节点:
- • 条件判断:根据响应中的字段(比如
approved === true) - • true 分支:执行通过后的操作
- • false 分支:记录拒绝原因或通知申请人
有了这套思路,你可以把任何“需要人点一下确认”的地方,都自然迁移成 n8n + 邮件审批流。
六、实战案例:手动触发发送一封测试邮件(完整可执行工作流 JSON)
下面给出一个完整、可导入 n8n 的工作流 JSON 示例:
- • 结构:Manual Trigger → Send Email
- • 用途:点击 “Execute Workflow” 时,发送一封简单的文本邮件
- • 适合初学者验证 SMTP 配置是否成功
- • 参数名和结构参考了官方社区中已验证可用的 emailSend 节点导出格式
1. 如何导入这个工作流
- 1. 复制下面的 JSON 代码。
- 2. 打开 n8n 编辑器。
- 3. 右上角点击 “Import from file / clipboard”。
- 4. 选择 “Clipboard”,粘贴 JSON,点击 “Import”。
- 5. 在 Send Email 节点中:
- • 绑定你自己的 SMTP 凭证
- • 修改
fromEmail / toEmail 等字段
- 6. 点击 “Execute Workflow” 即可测试。
2. 工作流 JSON 代码
{
"name": "简单邮件发送示例",
"nodes": [
{
"id": "manualTrigger",
"name": "Manual Trigger",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
260,
300
],
"parameters": {}
},
{
"id": "sendEmail",
"name": "Send Email",
"type": "n8n-nodes-base.emailSend",
"typeVersion": 2.1,
"position": [
540,
300
],
"parameters": {
"fromEmail": "你的名字 <[email protected]>",
"toEmail": "[email protected]",
"subject": "来自 n8n 的第一封测试邮件",
"emailFormat": "text",
"text": "你好,这是一封通过 n8n Send Email 节点发送的测试邮件。",
"options": {}
}
}
],
"connections": {
"Manual Trigger": {
"main": [
[
{
"node": "Send Email",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {},
"version": 2
}
使用说明:
- •
fromEmail:替换为你自己的发件人地址(可以带名字) - •
toEmail:替换为你要收件的邮箱 - • 记得在 Send Email 节点中选择你配置好的 SMTP 凭证
- • 运行工作流,检查收件箱是否收到这封邮件
如果想把它变成每天定时发送邮件,可以:
- • 把 Manual Trigger 换成 Cron 节点,设置每天固定时间触发,然后连接到同一个 Send Email 节点即可。
七、稍微进阶一点:和其他节点组合玩法思路
有了 Send Email 节点,你可以很容易叠加出更有用的自动化:
- • 和 Google Sheets / 数据库结合:读取一批用户邮件,循环发个性化欢迎邮件或营销邮件。
- • 和 AI 节点结合:用 LLM 总结内容 / 生成报告,再把结果通过 Send Email 发给运营或客户。
- • 和 Form Trigger 结合:做一个自定义表单,让用户填表后自动把内容邮件通知到支持邮箱(官方 Contact Form 工作流就是这么做的)。
Send Email 的核心就是:接收上游节点输出的数据 → 通过 SMTP 发邮件。
理解这一点,你几乎可以把任何节点的输出,通过 Send Email 转成“邮件通知 / 报告”。
引用链接