Automation library · Lead generation

End-to-end B2B real estate lead enrichment & outreach

Started by a change in a Google Sheet, and works across Gmail, Google Drive, Google Sheets, Pinecone and one other. It puts OpenAI behind a retrieval step, so answers are drawn from documents you supply rather than from the model alone. 58 steps, 3 branches: large, and worth reading before you trust it with anything live.

LargeCalls a model: OpenAIRetrieval

58 stepsLarge: read it before trusting it with anything live
3Branches: places the flow splits
0Loops or waits
5Services it connects to

The flow

Starts it 3Model 12Logic 19Service 24

The steps in the order they run, from what starts it.

  1. 1Fillout TriggerFillout triggerStarts it
  2. 2OpenAI Chat ModelLm Chat Open AiModel
  3. 3Embeddings OpenAIEmbeddings Open AiModel
  4. 4Structured Output ParserOutput Parser StructuredModel
  5. 5Google Sheets TriggerGoogle Sheets triggerStarts it
  6. 6When clicking ‘Execute workflow’Manual triggerStarts it
  7. 7Embeddings OpenAI1Embeddings Open AiModel
  8. 8Default Data LoaderDocument Default Data LoaderModel
  9. 9Map Fillout Submission FieldsSetLogic
  10. 10Generate Personalized Icebreaker & Lead ScoreAgentModel
  11. 11Generate Summary for PDF ExportAgentModel
  12. 12Pinecone Vector StoreVector Store PineconeModel
  13. 13Action Field SwitchSwitchLogic
  14. 14Search PDFs in Google Drive FolderGoogle DriveService
  15. 15Insert PDF Text into Pinecone IndexVector Store PineconeModel
  16. 16Append/Update Raw Leads SheetGoogle SheetsService
  17. 17Parse AI Agent Output (Lead Score & Message)CodeLogic
  18. 18Generate PDF Summary via Pdforge APIHttp RequestService
  19. 19Extract Icebreaker Text FieldsSetLogic
  20. 20Download Selected PDF for ProcessingGoogle DriveService
  21. 21Verify Email with ApifyHttp RequestService
  22. 22Prepare Website FieldSetLogic
  23. 23Prepare LinkedIn Profile URLSetLogic
  24. 24Extract PDF URL from FilloutSetLogic
  25. 25Merge LinkedIn Profile & PDF TextMergeLogic
  26. 26Append/Update Leads with AI SummariesGoogle SheetsService
  27. 27Download Generated PDF FileHttp RequestService
  28. 28Parse Icebreaker Subject and BodyCodeLogic
  29. 29Extract Text from Downloaded PDFExtract From FileService
  30. 30Map Email Validation FieldsSetLogic
  31. 31Crawl Company Website ContentHttp RequestService
  32. 32Fetch LinkedIn Profile DetailsHttp RequestService
  33. 33Download Project Brief PDFHttp RequestService
  34. 34Combine All Lead DataMergeLogic
  35. 35Hot Lead Alert SwitchSwitchLogic
  36. 36Upload PDF to Google Drive1Google DriveService
  37. 37Map Icebreaker Text for SendingSetLogic
  38. 38Email Validation Status SwitchSwitchLogic
  39. 39Map Website Text ContentSetLogic
  40. 40Format LinkedIn Profile for InsertionCodeLogic
  41. 41Upload PDF to Google DriveGoogle DriveService
  42. 42Generate LinkedIn Profile SummaryOpen AiModel
  43. 43Hot Lead Slack NotificationSlackService
  44. 44Normal Lead Slack NotificationSlackService
  45. 45Append/Update Google Sheet with PDF File urlGoogle SheetsService
  46. 46Send a message4GmailService
  47. 47Merge Email Validation & Website ContentMergeLogic
  48. 48Map LinkedIn Data for MergeSetLogic
  49. 49Download PDF from Google DriveGoogle DriveService
  50. 50Generate Company SummaryOpen AiModel
  51. 51Rename Uploaded PDF with Client Name & ProjectGoogle DriveService
  52. 52Update Google Sheet with Action StatusGoogle SheetsService
  53. 53Extract Text from PDFExtract From FileService
  54. 54Generate Project SummaryOpen AiModel
  55. 55Download Renamed PDF for SendingGoogle DriveService
  56. 56Map LinkedIn Data for Merge1SetLogic
  57. 57Email PDF Summary to Internal TeamGmailService
  58. 58Post Project AlertSlackService

How it's built

Starts on
A change in a Google Sheet
Steps
58, with 3 branches
Size
Large: read it before trusting it with anything live
Connects to
Gmail, Google Drive, Google Sheets, Pinecone, Slack
Model
OpenAI
Retrieval
Answers are drawn from documents you supply, not from the model alone

Questions

What does it need to run?

An n8n account, plus your own Gmail, Google Drive, Google Sheets, Pinecone and Slack accounts, and a key for OpenAI. You connect your own accounts after importing it; none are included.

What starts it?

It starts on a change in a Google Sheet.

Does it use AI?

Yes. It calls OpenAI. Its answers draw on documents you give it, not on the model alone. Model calls are billed by the provider, not by n8n.

How long does it take to set up?

Take your time. At 58 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

Before you run it

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 58 steps before you point it at anything that matters.