Automation library · Lead generation

Qualify property leads on WhatsApp with Google Sheets

Started by an incoming WhatsApp message, and works across GoHighLevel, Google Sheets, Redis and WhatsApp. It puts Gemini behind a retrieval step, so answers are drawn from documents you supply rather than from the model alone. 41 steps, 7 branches, 1 loop or waits: large, and worth reading before you trust it with anything live.

LargeCalls a model: GeminiRetrieval

41 stepsLarge: read it before trusting it with anything live
7Branches: places the flow splits
1Loop or waits
4Services it connects to

The flow

Starts it 1Model 3Logic 19Service 18

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

  1. 1When New WhatsApp MessageWhats App triggerStarts it
  2. 2Google Gemini ModelLm Chat Google GeminiModel
  3. 3Load Redis Chat HistoryMemory Redis ChatModel
  4. 4Set Message FieldsSetLogic
  5. 5AI Property Info AgentAgentModel
  6. 6Check Message Content PresenceIfLogic
  7. 7Set Parsed Output FieldsSetLogic
  8. 8Check If Text MessageIfLogic
  9. 9Check EligibilityIfLogic
  10. 10Fetch Deduplication KeyRedisService
  11. 11Send WhatsApp Non-Text AlertWhats AppService
  12. 12Send WhatsApp NotificationWhats AppService
  13. 13Set Required FieldsSetLogic
  14. 14Check Processing StatusIfLogic
  15. 15Redis Messaging StorageRedisService
  16. 16Generate Cal LinkSetLogic
  17. 17NoOp for Duplicate MessageNo OpLogic
  18. 18Store Deduplication KeyRedisService
  19. 19Customize Message ContentSetLogic
  20. 20Fetch Current Message BufferRedisService
  21. 21Send Custom WhatsApp MessageWhats AppService
  22. 22Integrate Message Into BufferSetLogic
  23. 23Extra Redis StorageRedisService
  24. 24Store Integrated Message BufferRedisService
  25. 25Update Timestamp for Last MessageRedisService
  26. 26Wait 2 Seconds for DebounceWaitLogic
  27. 27Verify Last Message TimestampRedisService
  28. 28Confirm Message RecencyIfLogic
  29. 29Acquire Processing LockRedisService
  30. 30Abort If Message StaleNo OpLogic
  31. 31Check Lock AvailabilityIfLogic
  32. 32Abort If Lock BusyNo OpLogic
  33. 33Apply Processing LockRedisService
  34. 34Retrieve Final Message BufferRedisService
  35. 35Combine Buffered MessagesSetLogic
  36. 36Reset Message BufferRedisService
  37. 37Fetch Contact ListHigh LevelService
  38. 38Check Contact ID PresenceIfLogic
  39. 39Read from SheetsGoogle SheetsService
  40. 40Post to LeadConnectorHttp RequestService
  41. 41Aggregate Property DataAggregateLogic

How it's built

Starts on
An incoming WhatsApp message
Steps
41, with 7 branches, 1 loop or waits
Size
Large: read it before trusting it with anything live
Connects to
GoHighLevel, Google Sheets, Redis, WhatsApp
Model
Gemini
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 GoHighLevel, Google Sheets, Redis and WhatsApp accounts, and a key for Gemini. You connect your own accounts after importing it; none are included.

What starts it?

It starts on an incoming WhatsApp message.

Does it use AI?

Yes. It calls Gemini. 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 41 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 41 steps before you point it at anything that matters.