2026-09-13 · 原文发布日
n8n模板:B2B线索自动评分,人工邮件批准后才外联
免费模板,webhook接收线索提交(邮箱和留言必填),写入PostgreSQL后由带记忆的OpenAI agent查询历史记录、按确定性规则算分并给出下一步建议;输出不可靠则转人工复核,需要动作时先建审批记录并邮件请审核者批准或驳回,批准后才发跟进邮件或转为客户记录,拒绝或超时则不采取敏感操作。全流程留痕在数据库。
原文要点
原模板为免费n8n工作流:webhook接收B2B线索,email与message必填,非法请求返回HTTP 400;线索upsert进PostgreSQL后,由带Postgres记忆的OpenAI AI Agent查询历史、调用确定性策略计算器算分并给出下一步,评估与活动日志回写数据库;输出不可靠则标记人工复核、邮件通知审核者并返回202;策略为no_action时记录后返回200;需要审批时创建审批记录、返回202与审批ID并邮件请审核者批准或驳回;批准后走SMTP发跟进邮件或转客户记录,拒绝或超时不执行敏感操作。
这次做成什么
把线索提交到后续动作的链路装上闸门:AI只负责评分和建议,外联与转客户必须经邮件人工批准。练习用三条合成线索分别触发400校验、no_action直接结案、需审批后发送跟进邮件三种路径。
准备什么
- 可登录的n8n实例(Cloud或自托管)并已能导入模板
- PostgreSQL数据库及n8n凭据,允许工作流建表
- OpenAI API凭据,模型名在模板配置中自行设定
- SMTP发信凭据,用于审核通知、审批请求与批准后的跟进邮件
- 一个审核者邮箱和一个对外的发件邮箱
- 能POST线索的来源(练习时用curl或表单工具代替)
具体怎么做
导入模板并初始化数据库
从原模板页免费导入。添加Postgres凭据后,手动执行一次模板中的Create Agent Tables步骤完成建表,再执行整条流程确认不再报缺表错误。
填写工作流配置
按原文Setup要求修改配置值:业务名、服务列表、评分阈值、记忆窗口、from/to邮箱和预约URL。阈值建议先照抄材料二的练习配置,跑通后再按业务调。
接入OpenAI与SMTP
添加OpenAI凭据并在配置里填模型名;添加SMTP凭据,确认审核通知、审批请求、批准后跟进邮件三类节点都能发信(先发测试邮件到自己和审核者)。
对外发布webhook
复制webhook的Production URL交给线索来源方,约定POST JSON至少含email和message两个字段;缺字段或格式非法时流程应返回HTTP 400。
跑通三条练习路径
用材料一的合成线索:①删掉email字段发送应得400;②发低分留言应走no_action、返回200且库内有评估记录;③发高分意向留言应返回202与approvalId,审核者点邮件里的批准后触发跟进邮件并在库中记录contact attempt。
可直接复制的材料
合成测试线索(POST到webhook)
全部虚构;message含明确预算与时间信号,用于触发高分审批路径。
{
"email": "li.wei@example-corp.cn",
"name": "李维",
"company": "示例智造(虚构)",
"message": "我们有约80人的销售团队,想在Q3上线线索分级与外联自动化,预算已批,希望两周内约一次方案演示。"
}练习用评分策略配置(确定性计算器参考)
本站设计的练习配置,信号词与分值自定;模板真实计算器逻辑以导入后的节点为准,请对照后替换。
{
"businessName": "示例科技(虚构练习用)",
"services": ["线索分级", "外联自动化", "CRM集成"],
"scoring": {
"signalPoints": {"mentionsBudget": 30, "mentionsTimeline": 25, "mentionsTeamSize": 15, "asksForDemo": 30},
"thresholds": {"hotMin": 70, "warmMin": 40},
"policy": {"hot": "requires_approval_send_followup", "warm": "requires_approval_nurture", "cold": "no_action"}
},
"memoryWindow": 10,
"fromEmail": "sales@example-corp.cn",
"reviewerEmail": "reviewer@example-corp.cn",
"bookingUrl": "https://example-corp.cn/book-demo"
}审批请求邮件正文模板
占位变量需映射到模板实际字段名;批准/驳回链接指向模板生成的审批入口。
主题:【待审批】线索跟进申请 {{leadEmail}}
审核者你好:
系统对线索 {{leadEmail}}({{company}})的评估如下:
- 综合得分:{{score}}({{tier}})
- 判定依据:{{reasons}}
- 建议动作:{{proposedAction}}
- 审批编号:{{approvalId}}
拟发送的跟进邮件草稿:
{{draftEmail}}
请回复或点击:
批准:{{approveLink}}
驳回:{{rejectLink}}
超过{{timeoutHours}}小时未处理将自动记为拒绝,不执行任何外联动作。输入与输出示例
本站虚构演示,分值按材料二配置累加(30+25+15+30),非原作者运行结果。
输入
{"email":"li.wei@example-corp.cn","name":"李维","company":"示例智造(虚构)","message":"我们有约80人的销售团队,想在Q3上线线索分级与外联自动化,预算已批,希望两周内约一次方案演示。"}对应输出
HTTP 202,响应体{"status":"pending_approval","approvalId":"APR-2026-0042","qualification":{"score":100,"tier":"hot","matchedSignals":["mentionsBudget","mentionsTimeline","mentionsTeamSize","asksForDemo"],"proposedAction":"send_followup"}};审核者邮箱收到含草稿与批准/驳回链接的审批邮件,PostgreSQL新增一条审批记录。做完检查这些
- 缺少email或message的POST返回HTTP 400且库中不产生记录
- 高分线索返回202与approvalId,未获批准前不发送任何跟进邮件
- 批准动作后跟进邮件经SMTP发出且库中出现contact attempt日志
- 审批超时或驳回后线索状态记录为rejected且无敏感操作
容易卡住的地方
- 原文要求先跑一次Create Agent Tables初始化,跳过会导致后续节点报缺表
- 代理输出不可靠时流程会转人工复核并返回202,这不是失败,是设计好的降级路径
- 阈值、记忆窗口、邮箱都在配置值里,改模型名后建议重跑三条练习路径复验
- SMTP若用个人邮箱应用密码,注意发送频率限制,批量测试易被拦
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Qualify B2B leads with OpenAI, PostgreSQL, and human email approval
- 原作者
- Paras Gediya
- 原始发布日期
- 2026-09-12T19:56:56.650Z
- 来源
- https://n8n.io/workflows/19520