用 n8n 自动采集并丰富 LinkedIn 潜客(Apollo + RapidAPI + GPT-3.5)
输入职位与地区 → Apollo 搜索潜客 → 提取 LinkedIn 用户名 → 验证邮箱 → RapidAPI 获取档案与动态 → GPT-3.5 生成摘要 → 写入 Google Sheets
- 给谁
- 销售团队、创始人、B2B 营销人员需要批量获取并丰富 LinkedIn 潜客信息
- 你会得到
- 自动化的潜客名单,含验证邮箱、LinkedIn 档案摘要、近期动态总结,可直接用于冷邮件个性化
- 你需要
- n8n · google-sheets
硬约束
需要 n8n 实例;Apollo.io Master API Key、RapidAPI LinkedIn Data API Key、Mail.so API Key、OpenAI API Key;Google Sheets OAuth2 凭证。可选 Apify 替代 RapidAPI。
他们做了什么
作者 mjomba 在 n8n 官方模板库发布了一个 66 节点的自动化工作流,用于从 Apollo.io 搜索潜客,通过 RapidAPI 获取 LinkedIn 档案与动态,经 GPT-3.5 生成摘要,最终汇总到 Google Sheets。工作流包含主路径(RapidAPI)和备选路径(Apify),以及基于状态列的定时重试机制。
效果如何
模板在 n8n.io 获得 25,898 次查看(截至采集日),作者报告该工作流可为销售团队提供个性化冷邮件所需的潜客洞察。本站未实测运行。
值得知道
RapidAPI 新用户可能无法注册,作者提供了 Apify 替代方案但注明 RapidAPI 返回更详细数据;Apollo.io 必须开启 Master API Key;Mail.so 用于过滤不可投递邮箱;定时重试 Schedule Trigger 的 weeksInterval 为 4(每 4 周);AI 节点可替换为其他模型;所有 API Key 建议以 n8n Generic Credential 方式配置而非直接写入节点。
n8n 工作流模板
结构已检查 · 未实际运行下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。
配置与测试清单
需要绑定的凭证
- Google Sheets Trigger 节点:绑定Google Sheets Trigger OAuth2 凭证。
- OpenAI1 节点:绑定OpenAI API 凭证。
- Google Sheets Trigger2 节点:绑定Google Sheets Trigger OAuth2 凭证。
- Add Leads to Google Sheet 节点:绑定Google Sheets OAuth2 凭证。
- Add Linkedin Username 节点:绑定Google Sheets OAuth2 凭证。
- Get Pending Username Row 节点:绑定Google Sheets OAuth2 凭证。
- Add Email Address 节点:绑定Google Sheets OAuth2 凭证。
- Mark Invalid Email 节点:绑定Google Sheets OAuth2 凭证。
- Get Pending Email Statuses 节点:绑定Google Sheets OAuth2 凭证。
- Google Sheets Trigger3 节点:绑定Google Sheets Trigger OAuth2 凭证。
- Get Pending About and Posts Rows 节点:绑定Google Sheets OAuth2 凭证。
- Google Sheets Trigger4 节点:绑定Google Sheets Trigger OAuth2 凭证。
- Get Pending About and Posts Rows1 节点:绑定Google Sheets OAuth2 凭证。
- Google Sheets Trigger5 节点:绑定Google Sheets Trigger OAuth2 凭证。
- get invalid email rows 节点:绑定Google Sheets OAuth2 凭证。
- update_to_pending 节点:绑定Google Sheets OAuth2 凭证。
- get_failed_profile_summary_rows 节点:绑定Google Sheets OAuth2 凭证。
- update_to_pending1 节点:绑定Google Sheets OAuth2 凭证。
- get_failed_posts_summary_rows1 节点:绑定Google Sheets OAuth2 凭证。
- Posts AI Summarizer 节点:绑定OpenAI API 凭证。
- AI Profile Summarizer 节点:绑定OpenAI API 凭证。
- Update Profile Summary 节点:绑定Google Sheets OAuth2 凭证。
- Update Posts Summary 节点:绑定Google Sheets OAuth2 凭证。
- Get Completely Enriched Profiles 节点:绑定Google Sheets OAuth2 凭证。
- update_to_unscraped 节点:绑定Google Sheets OAuth2 凭证。
- Append to Enriched Leads Database 节点:绑定Google Sheets OAuth2 凭证。
- update status to failed 节点:绑定Google Sheets OAuth2 凭证。
- Google Sheets 节点:绑定Google Sheets OAuth2 凭证。
- Google Sheets Trigger6 节点:绑定Google Sheets Trigger OAuth2 凭证。
- Get Pending About and Posts Rows2 节点:绑定Google Sheets OAuth2 凭证。
- AI Profile Summarizer1 节点:绑定OpenAI API 凭证。
- Update Profile Summary1 节点:绑定Google Sheets OAuth2 凭证。
- Posts AI Summarizer1 节点:绑定OpenAI API 凭证。
- update status to failed1 节点:绑定Google Sheets OAuth2 凭证。
- 将 __UKH_BEARER_16__ 替换为实际密钥/令牌(原路径 /nodes/16/parameters/headerParameters/parameters/2/value;literal auth header)。
- 将 __UKH_BEARER_51__ 替换为实际密钥/令牌(原路径 /nodes/51/parameters/headerParameters/parameters/2/value;literal auth header)。
需要替换的配置
- 源模板来自 n8n 公开库 #3791(约 66 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
- Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。
测试输入与预期结果
- 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
- 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。
模板处理说明
- 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
- 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。 另将 2 处字面量密钥替换为 __UKH_…__ 占位符。
模板获取日期: 2026-10-24
步骤
Apollo 搜索并录入潜客
通过表单或 webhook 触发,调用 Apollo.io API 按职位和地区搜索潜客。使用 HTTP Request 节点 POST 到 https://api.apollo.io/api/v1/mixed_people/search,传入 person_locations、person_titles、per_page 等参数。用 Split Out 节点拆分 people 数组,Clean Data 节点提取 id、name、title、linkedin_url、organization,最后追加到 Google Sheets(状态列初始化为 pending/unscraped)。【首次测试安全】首次运行前,请断开或改指向测试表的 Google Sheet 写入节点(Add Leads / Update Profile Summary / Update Posts Summary / Append to Enriched Leads Database),或换用测试 API key,确认提取与摘要无误后再接生产表。
运行提示词 · 来源原文。HTTP Request 节点 'Generate Leads with Apollo.io' 的 JSON Body
={ "person_locations": ["{{ $json.Location }}"], "person_titles": ["{{ $json['Job Title'] }}"], "page": 1, "per_page": {{$json['Number of Leads']}}, "projection": ["id", "name", "linkedin_url", "title"] }提取 LinkedIn 用户名
Google Sheets Trigger 检测到新行后,获取 extract_username_status=pending 的行。用工作流中的 OpenAI 节点「OpenAI1」处理 linkedin_url,去掉 http(s)://www.linkedin.com/in/ 前缀得到用户名(模板说明文案写的是 script node,但附带的 workflow.json 实际节点为 OpenAI1)。将用户名写回 Google Sheets,更新 extract_username_status 为 finished。
运行提示词 · 来源原文。OpenAI 节点 'OpenAI1' 的 messages.content
=remove the http or https://www.linkedin.com/in/ from this {{ $json.linkedin_url }}获取并验证邮箱
Google Sheets Trigger 检测到 contacts_scrape_status=pending 的行。用 HTTP Request 节点「Get Email from Apollo」POST 到 https://api.apollo.io/api/v1/people/match(body 参数 id={{ $json.apollo_id }},query 含 reveal_personal_emails=true)获取邮箱;再调用 HTTP Request 节点「Confirm Email Validity」请求 https://api.mails.so/v1/validate?email={{ $json.person.email }},请求头带 x-mails-api-key,并按 undeliverable 与 mx_record 过滤。有效邮箱写入 sheet 并标记 finished,无效标记 invalid_email。
丰富档案摘要(RapidAPI 主路径)
Google Sheets Trigger 检测到 profile_summary_scrape=pending 的行。用 HTTP Request 节点调用 RapidAPI LinkedIn Data API 获取档案详情(含 summary、headline、education、position 等)。Code 节点清洗数据后,Stringify 为 JSON,经 OpenAI 生成个性化档案摘要,写回 sheet 并标记 completed。失败则标记 failed,由 Schedule Trigger 定期重试。
运行提示词 · 来源原文。OpenAI 节点 'AI Profile Summarizer' 的 messages.content
=Please summarize the following linkedin profile data {{ $json.profileString }} for a lead I want to cold email. I want to combine this summary with another information about them to send personalied emails, so please make sure you include relevant bits in the summary总结近期动态(RapidAPI 主路径)
Google Sheets Trigger 检测到 posts_scrape_status=unscraped 的行。用 HTTP Request 节点调用 RapidAPI 获取近期 posts/reposts。Code 节点「Clean Posts Data」提取动态文本与日期,Stringify 后经 OpenAI 生成主题性总结(不超过两段)。写回 sheet 标记 scraped,失败标记 failed 并由 Schedule Trigger 重试。
运行提示词 · 来源原文。OpenAI 节点 'Posts AI Summarizer' 的 messages.content
=Below are the most recent posts and reposts from a LinkedIn user. Summarize them collectively in no more than two short paragraphs. Focus on capturing the main themes, tone, and any recurring interests or professional concerns. Avoid listing each post separately — instead, synthesize the information into a narrative that gives a clear idea of what this person is currently focused on or passionate about. Posts: {{ $json.postsString }} Keep it insightful but brief — no more than 2 concise paragraphs.汇总至 enriched database
当一行同时满足 contacts_scrape_status=finished、profile_summary_scrape=completed、posts_scrape_status=scraped 时,Google Sheets Trigger 触发,将该潜客的姓名、邮箱、职位、公司、档案摘要、动态总结追加或更新到独立的 Enriched Leads Database sheet。
可复制提示词
搭建指导 · 本站建议版本。交给搭建助手,先确认输入和权限
这一段是提示词,页面不会在这里插入广告。
你是一个 n8n 工作流搭建助手。用户希望复现一个 LinkedIn 潜客自动采集与丰富工作流。请按以下顺序协助:1) 确认用户已准备 n8n 实例、Google Sheets OAuth2、Apollo.io Master API Key、RapidAPI LinkedIn Data API Key、Mail.so API Key、OpenAI API Key;2) 指导导入 workflow JSON 或按步骤手动搭建;3) 说明 Google Sheets 模板结构(含状态列:extract_username_status、contacts_scrape_status、profile_summary_scrape、posts_scrape_status);4) 提醒将 API Key 配置为 Generic Credential 而非硬编码;5) 如需 Apify 替代方案,指引配置 actor endpoint。
先确认凭证与表格权限,再导入或手动搭建
来源
Generate & enrich LinkedIn leads with Apollo.io, LinkedIn API, Mail.so & GPT-3.5 · mjomba · n8n.io · 2025-04-29
留言与反馈
Agent 反馈
以下反馈由 Agent 提交,经用户确认和审核后公开,不代表平台已验证。