Design scalable sync workflows with Data Tables, ProspectPro and HubSpot — n8n 워크플로

높음 복잡도 트리거133개의 노드⚒️ Engineering👁 20회 조회작성자: Olivier

개요

This template is a pattern library (one importable workflow) that shows a repeatable way to structure n8n automations so they remain easy to extend, cheaper to run, and safer to scale.

It’s intentionally opinionated and dry: the goal is not “plug & play”, but a set of proven building blocks you can copy into your own workflows.

Problems this framework solves Spaghetti workflows that are hard to change**
A consistent split into Trigger → Manager → Function → Utility so changes don’t ripple

사용된 노드

HTTP RequestTelegramHubSpotCode

워크플로 미리보기

A. Triggers basics
Most triggers output one or more items that need to be
- DMs / Emails / Notifications
- Companies / Contacts / Prospects
- Website Visits / Form Sub
A2 - Rate-limited individual processing
Use this pattern when your trigger can output a suffici
A1 - Simple, individual processing.
Use this pattern if:
- your trigger always outputs 1 item per execution (lik
- your tr
B1. Custom polling 1: simple, versatile, limi
When your trigger doesn't support batching events, you'
B1 - Start sync
Select your timer interval and choose a name for your d
B1 - Get/set lastSync
Get the time of the last execution or start from 0 (fir
B1 - Create/update database entry
Store the current time in the database (for next cycle)
B1 - Fetch new items
Retrieve items that have been created/updated/.. since
B1 - Validate, prepare & filter items
To cover all grounds, this is where you modify the resu
B2 - Start sync
Select your timer interval, choose a name for your data
B2 - Get/set lastSync
Get the time of the last execution or start from 0 (fir
B2 - Create/update database entry
Get the timestamp that corresponds with the most recent
B2 - Fetch new items
Retrieve items that have been created/updated/.. since
B2 - Validate, prepare & filter items
To cover all grounds, this is where you modify the resu
B2. Custom polling 2: optimal, more config
When you're working with unstable API's, "B1" doesn't c
Choose: A1 or A2?
Choose: A1 or A2?
B2 - Enable looping (optional)
Allow this workflow to call itself. Warning: be very ca
[ Add a 2nd trigger here ("When executed by another wor
DANGER ZONE (optional): repeat
Warning: be very careful when creating (potentially inf
B3 - Start sync
Select your timer interval, choose a name for your data
B3 - Get/set lastSync & setup pagination
Get the time of the last execution or start from 0 (fir
B3 - Create/update database entry
Get the timestamp that corresponds with the most recent
B3 - Fetch new items
Retrieve items that have been created/updated/.. since
B3 - Validate, prepare & filter items
To cover all grounds, this is where you modify the resu
B3 - Custom polling 3: complete, most config
Sometimes you just need it all; full control over every
B3 - Pagination
Initiate pagination.
B3 - Update pagination
Determine whether this is the last page. Needs customiz
A2 - Rate-limited individual processing
Use this pattern when your trigger can output a suffici
B3 - Pagination delay
Delay after each page that has been processed.
C. Manual triggers: introduction
"But what do we do with the data that's already there?"
C2. Manual triggers: throttled, no pagination
Use this loop when:
- Your service doesn't support pagination
- There's only few items to process incidentally
What's "throttling"?
- Most APIs h
C3. Manual triggers: throttled and paginated
Use this loop when:
- Your service supports pagination
- You need a stable, scalable solution
Why not use a "recursive" pattern?
- true; having the w
D. Workflow types: "Managers"
Managers orchestrate multi-step processes that should b
Managers are intended for 2 things:*
E. Workflow types: "Functions"
Function workflows perform one well-defined task on an
1. Functions are called by manager-workfl
F. Workflow types: "Utilities"
Utility workflows provide helper functionality for othe
Utility workflows:
1. Are called by manager- and/or function-workflows to
2. Return
C1 - Simple example.
C2 - All items
Retrieve items all items at once.
C2 - Validate, prepare & filter items
To cover all grounds, this is where you modify the resu
C2 - Rate-limited individual processing
Use this pattern when your trigger can output a suffici
C3 - Setup
Setup workflow variables.
C3 - Loop
(re-)Initiate loop.
C3 - Get Items
Get items from the current page. Customize according to
C3 - Validate, prepare & filter items
To cover all grounds, this is where you modify the resu
C3 - Rate-limited individual processing
Use this pattern when your trigger can output a suffici
C3 - Pagination delay
Delay after each page that has been processed.
Part 2: Workflows
Triggers manage the items in an execution. But they don
As scalability is the trigger'
Part 1: Trigger Workflows
Triggers are simple; if you're dealing with a single it
Part 0: Introduction
In n8n, you’ve got infinite ways to reach your goal. Bu
Modularity example 1: New Prospect
Trigger-workflow
Once a day, get all new prospects.
Manager-workflow
Process one new prospect.
Function-workflow 1
Qualify the new prospect based on data and website cont
Function-workflow 2
Find the people in the Decision Making Unit of the new
Function-workflow 3
Sync Company & Contacts to Hubspot.
Trigger-workflow
When I receive a new email from a customer.
Function-workflow
I draft a response tailored to this customer.
Utility-workflow
Get customer data from Hubspot to use in the response.
Utility-workflow 1
Check if Company already exists in Hubspot
Utility workflows
Managers and functions sometimes ask my help for a high
Function workflows
The manager uses me to perform one task in it's process
Manager workflows
The trigger feeds me one item. I guide this item throug
Trigger workflows
I start processing one or more items by activating a ma
Function-workflow 4
Sync Company to Hubspot.
Modularity example 2: Customer Email
D1 - Completed successfully
Remove the "in progress"-indicator and optionally add a
Important: As you can see we "refresh" the item before
D1 - Your process
Here you add the steps (function-workflows) in your pro
D1 - Completed with errors
Remove the "in progress"-indicator and add an error-ind
D1 - Set "in progress"-indicator
Prevent duplicate runs and user error by setting an ind
D - Example: simple manager
This is what proper automation looks like: clean proces
D - Set output
It's crucially important you always output one item. In
*More details? Check "D1 - Set output" (below).*
D1. How "manager-workflows" prevent common is
Manager-workflows offer solutions for three complicated
D1 - Set variables
Manage indicators centrally.
D1 - Guard Error
When an item can't be retrieved or updated, or a guard
D1 - Set output
It's crucially important you always output one item.
Why?
- Consider the trigger-workflow that calls this manager
- When the trigger-workflow is processing multi
Quick recap & introduction E + F
So far we've been dealing exclusively with "overhead":
Utility-workflow 2
Sync Contact to Hubspot.
E1 - Refresh item
You probably get the gist of this by now; before doing
E1 - Set output
It's crucially important you always output one item. In
*More details? Check "D1 - Set output" (below).*
E1 - Guard your workflow
Always double check if you should perform actions befor
E1 - Your workflow
This is just for demonstration purposes. Replace with y
E1 - Your workflow
This is just for demonstration purposes. Replace with y
E1 - Add a error indicator (optional)
If you want to prevent this function to be executed for
Please note: unlike earlier
E1 - Add a success indicator (optional)
If you want to prevent this function to be executed for
Please note: unlike earlie
E1 - Your workflow
This is just for demonstration purposes. Replace with y
*"E1 - Find Company in Hubspot" is a reference to the f
E1 - Guard Error
When an item can't be retrieved or a guard is activated
However; if the workflow
F1 - Your workflow
This is just for demonstration purposes. Replace with y
*Example workflow below is an extension of the function
E1 - Example input
`{
"id": 1234567890
}`
F1 - Example input
`{
"id": 1234567890,
"domain": "bedrijfsdata.nl",
"name": "Bedrijfsdata.nl B.V.",
...
F1 - Set output
It's crucially important you always output one item tha
E1 - Example input
`{
"id": 1234567890
}`
E1 - Set variables
Manage indicators centrally.
*On your first read, B and C. Go directly to
*It must seem like ages ago, but do you remem
1 - Errors
Some errors, you just can't prevent. In such cases, you
We suggest you use something like this.
Please note you shouldn't assume your messaging-c
1 - Errors - Log the issue
Log the issue in a local error log.
Bonus
Misc. re-usable patterns. Well. For now it's just one.
1 - Errors - Notify yourself
Notify yourself. Add a fallback channel to ensure the m
About this document
We’ve rit rate limits. We’ve had workflows spin out of
Over time, a system developed. A system that works. Eve
C
Create Batches
P
Process one item at a ti…
P
Process one item at a ti…
D
Delay after each batch
N
New Website Visitors
B
B1 - Schedule Trigger
B
B1 - Set variables
B
B1 - Get timestamp
B1 - Set lastSync
B1 - Get Items
B
B1 - Has Items?
B
B1 - Items
B
B1 - Filter Items
B
B1 - Update timestamp
B
B1 - Create timestamp
B
B1 - No Operation, do no…
B
B2 - Schedule Trigger
B
B2 - Set variables
B
B2 - Get timestamp
B2 - Set lastSync
B2 - Get Items
B
B2 - Has Items?
B
B2 - Items
B
B2 - Filter Items
B
B2 - Update timestamp
B
B2 - Create timestamp
B
B2 - No Operation, do no…
B
B1 - Has timestamp / not…
B
B2 - Has timestamp / not…
B2 - Update lastSync
B
B3 - Schedule Trigger
B
B3 - Set variables
B
B3 - Get timestamp
B3 - Set lastSync
B3 - Get Items
B
B3 - Has Items?
B
B3 - Items
B
B3 - Filter Items
B3 - Update lastSync
B
B3 - Has timestamp / not…
B
B3 - Update timestamp
B
B3 - Create timestamp
B
B3 - No Operation, do no…
B3 - Set pagination
B
B3 - Done looping?
B3 - Update pagination
W
Wait
B
B3 - Create Batches
B
B3 - Process one item at…
B
B3 - Delay after each ba…
W
When clicking ‘Execute w…
C2 - Get Items
C
C2 - Has Items?
C
C2 - Items
C
C2 - Filter Items
C
C2 - Create Batches
C
C2 - Process one item at…
C
C1 - Process one item at…
C
C2 - Delay after each ba…
C
C3 - Set variables
C3 - Set pagination
C3 - Get Items
C
C3 - Has Items?
C
C3 - Items
C
C3 - Filter Items
C
C3 - Create Batches
C
C3 - Process one item at…
C
C3 - Delay after each ba…
C
C3 - Wait
B
B2 - Needs loop?
B
B2 - Call [this workflow]
D
D - Qualify Prospect
D
D - Qualification Succes…
D
D - Identify DMU
D
D - DMU identification s…
D
D - Sync Hubspot
D
D - Hubspot sync success…
D
D - Set output
D
D1 - Set variables
D
D1 - Get prospect
D
D1 - Continue?
D1 - Add "tag_in_progress"
D
D1 - Update prospect
D
D1 - Automatically Quali…
D
D1 - Qualification Succe…
D
D1 - Get Contacts
D
D1 - Contacts search suc…
D
D1 - Sync Hubspot
D
D1 - Hubspot sync succes…
D
D1 - Get prospect for fi…
D1 - Add "tag_success", …
D
D1 - Update Tags: Success
D
D1 - Get prospect for fi…
D1 - Add "tag_error", re…
D
D1 - Update Tags: Fail
D
D1 - Stop and Error
W
When Executed by [trigge…
D
D - Qualify Prospect (va…
D
D - Identify DMU (var b)
D
D - Switch (var b)
D
D - Qualification Succes…
D
D - Sync Hubspot (var b)
D
D - Hubspot sync success…
E
E1 - Stop and Error
Search Companies by Bedr…
F
Found by ID?
Search Companies by Domain
H
Has Domain?
F
Found by Domain?
E
E1 - Get prospect
E
E1 - No Existing Errors?
E
E1 - Continue?
E
E1 - Find Company in Hub…
E
E1 - Found?
E1 - Update a company
E
E1 - Update Successful?
E1 - Create a company
E
E1 - Creation Successful?
E
E1 - Update Tags: Fail
E
E1 - Update Tags: Success
E1 - return { result: fa…
F1 - return Hubspot Comp…
F1 - return { result: fa…
F1 - return { result: tr…
E
E1 - Set variables
E1 - Add "tag_success"
E1 - Add "tag_error"
E1 - return { result: tr…
B3 - Initiate pagination
W
Webhook
1
1 - Errors - Error Trigger
1
1 - Errors - Insert row
1 - Errors - Send a text…
133 nodes166 edges

작동 원리

  1. 1

    트리거

    워크플로는 트리거 트리거로 시작합니다.

  2. 2

    처리

    데이터가 133개의 노드를 통해 흐릅니다, connecting @bedrijfsdatanl/n8n-nodes-prospectpro.prospectpro, @bedrijfsdatanl/n8n-nodes-prospectpro.prospectprotrigger, code.

  3. 3

    출력

    워크플로가 자동화를 완료하고 구성된 대상에 결과를 전달합니다.

노드 세부 정보 (133)

HT

HTTP Request

httpRequest

#1
TE

Telegram

telegram

#2
HU

HubSpot

hubspot

#3
CO

Code

code

#4

이 워크플로 가져오는 방법

  1. 1오른쪽의 JSON 다운로드 버튼을 클릭하여 워크플로 파일을 저장합니다.
  2. 2n8n 인스턴스를 열고 워크플로 → 새로 만들기 → 파일에서 가져오기로 이동합니다.
  3. 3다운로드된 design-scalable-sync-workflows-with-data-tables-prospectpro-and-hubspot 파일을 선택하고 가져오기를 클릭합니다.
  4. 4각 서비스 노드에 대한 자격 증명(API 키, OAuth 등)을 설정합니다.
  5. 5워크플로 테스트를 클릭하여 모든 것이 작동하는지 확인한 후 활성화합니다.

또는 n8n → JSON에서 가져오기에 직접 붙여넣기:

{ "name": "Design scalable sync workflows with Data Tables, ProspectPro and HubSpot", "nodes": [...], ...}

통합

@bedrijfsdatanl/n8n-nodes-prospectpro.prospectpro@bedrijfsdatanl/n8n-nodes-prospectpro.prospectprotriggercodedatatableerrortriggerexecuteworkflowexecuteworkflowtriggerfilterhttprequesthubspotifmanualtriggerscheduletriggersetsplitinbatchessplitoutstopanderrorswitchtelegramwait

이 워크플로 가져오기

한 번의 클릭으로 다운로드 및 가져오기

JSON 다운로드n8n.io에서 보기
노드133
복잡도high
트리거trigger
조회수20
카테고리Engineering

제작자

Olivier

Olivier

@olivier-nl

태그

@bedrijfsdatanl/n8n-nodes-prospectpro.prospectpro@bedrijfsdatanl/n8n-nodes-prospectpro.prospectprotriggercodedatatableerrortriggerexecuteworkflowexecuteworkflowtriggerfilterhttprequesthubspot

n8n을 처음 사용하시나요?

n8n은 무료 오픈소스 워크플로 자동화 도구입니다. 자체 호스팅하거나 클라우드 버전을 사용하세요.

n8n 무료로 시작하기 →

Related Engineering Workflows

COGOHTIF+5
high

Automate YooKassa Payments & Order Logs in Google Sheets

Transform your payment operations with this comprehensive n8n automation designed for seamless YooKassa integration. Instead of manual data entry, this workflow creates a self-correcting financial ledger by syncing every transaction directly into Google Sheets in real-time. The logic handles the entire commerce lifecycle: from the moment a customer initiates a checkout to the final status confirmation via secure webhooks. What sets this template apart is its robust error-handling and multi-stage processing. It doesn't just log successful sales; it intelligently updates refund statuses, sorts transaction types, and uses conditional logic to ensure your spreadsheet remains a 'single source of truth.' By utilizing the Respond to Webhook node, the workflow provides immediate feedback to the payment gateway, ensuring high reliability. This is an enterprise-grade solution for small business owners who need to scale their digital sales without the overhead of expensive ERP software or manual bookkeeping. It eliminates human error, accelerates fulfillment, and provides a transparent audit trail for every ruble processed. **Common Use Cases:** - Automated Digital Product Delivery: Trigger instant access to downloads or courses once the YooKassa payment status is verified in the sheet. - Real-time Financial Reporting: Maintain a live dashboard of sales performance and refund rates for e-commerce stakeholders without manual exports. - No-code Subscription Management: Track recurring customer payments and trial expirations by logging every transaction event into a centralized Google Sheets database.

🔗 Webhook·39 nodes
COGOHTMA
low

Automate Google AI Overview Tracking: SEO Audit with SerpApi

As Google’s Search Generative Experience (SGE) reshapes the digital landscape, traditional SEO metrics often fall short. This advanced n8n workflow bridges the data gap by providing a scalable solution for monitoring brand visibility within AI Overviews. By integrating SerpApi with Google Sheets, the automation systematically audits your target keyword clusters to detect AI-generated summaries and source citations. The process begins by pulling high-priority keywords directly from your repository. It then executes real-time search queries via SerpApi, utilizing custom JavaScript in a Code node to parse complex JSON responses. The workflow specifically identifies if an AI Overview is present and, more importantly, whether your domain is cited as a primary source. All findings are exported into a structured Google Sheet, creating a historical record of your 'AI Share of Voice.' This automation saves SEO teams dozens of manual hours, allowing for data-driven adjustments to content strategy based on how Google’s LLM perceives and attributes your site’s authority. It is an essential tool for agencies and enterprise SEOs looking to defend their organic traffic in the age of generative search. **Common Use Cases:** - SGE Visibility Benchmarking vs Competitors - Automated AI Citation Reporting for SEO Clients - Content Strategy Optimization for Informational Intent Queries

Trigger·5 nodes
EDFOGIGM+3
medium

Automate Dynamic GitHub Images & URL Redirects in n8n

Stop manually updating marketing assets across distributed channels. This professional n8n automation eliminates the 'stale content' problem by transforming static GitHub-hosted images and links into dynamic, self-updating resources. Instead of hunting down every email template or PDF where you've embedded a promotional banner, this workflow allows you to push updates to a central GitHub repository that automatically reflects across all live instances. The workflow functions by utilizing GitHub as a headless content management system. It leverages the EditImage node to programmatically modify visual assets and the GitHub node to commit these changes automatically. It includes a Form Trigger for on-demand updates and a Schedule Trigger for recurring maintenance. By using stable embed links that point to dynamic GitHub files, your marketing collateral remains evergreen. Whether you are updating a limited-time offer in an old email sequence or refreshing data visualizations in a shared report, this automation ensures your audience always sees the most current information without requiring manual re-distribution of files. **Common Use Cases:** - Automated Email Banner Updates for Evergreen Campaigns - Dynamic GitHub Profile Readme & Repository Statistics - Centralized Promo Link Management for Distributed PDF Guides

Trigger·12 nodes
AGCOEXGI+8
medium

Automate Jekyll SEO Blogs with GPT-4 and GitHub (n8n Guide)

This sophisticated automation engine transforms your content strategy by bridging the gap between raw data and a live, high-ranking Jekyll website. Instead of manually drafting and formatting Markdown files, this workflow utilizes an advanced LangChain agent powered by GPT-4 to synthesize high-quality, long-form articles from simple CSV inputs. The system intelligently parses your data, constructs SEO-optimized blog posts, and handles the technical heavy lifting by committing the code directly to your GitHub repository. This triggers your CI/CD pipeline for instant deployment. Beyond just publishing, the workflow acts as a social media manager, automatically distributing your new content to LinkedIn and X (Twitter) to maximize reach and backlinks. It is an ideal solution for lean marketing teams or solo developers who need to maintain a consistent publishing cadence without the overhead of a traditional CMS. By automating the research, writing, and distribution phases, users can scale their organic traffic exponentially while focusing on high-level strategy rather than repetitive formatting and manual commits. **Common Use Cases:** - Programmatic SEO for Niche Affiliate Marketing Sites - Automated Technical Documentation and Change Log Updates - Scalable Content Engine for Multi-Language Recipe or Directory Portals

Trigger·13 nodes
AGCOEMEM+5
medium

Build a Local AI Book Concierge with Ollama & n8n

Transform your inbox into an intelligent, automated literary assistant with this advanced n8n workflow. By leveraging the power of local LLMs through Ollama and the OpenLibrary API, this automation eliminates the manual effort of responding to reading inquiries. The process begins by monitoring an IMAP folder for incoming requests. Once an email arrives, a sophisticated AI agent analyzes the sender's natural language to pinpoint their specific interests and genre preferences. The workflow then executes a real-time API lookup to fetch accurate bibliographical data, including summaries and metadata. Finally, it crafts and sends a professional, personalized recommendation email back to the user. This setup is perfect for organizations looking to deploy privacy-focused AI solutions without relying on expensive cloud tokens. It demonstrates a high-level integration of LangChain agents, conditional logic, and external data enrichment, providing a seamless 'set-and-forget' experience for managing high volumes of literary or educational inquiries while maintaining a human-like touch in communication. **Common Use Cases:** - Personalized Reading Lists for Digital Newsletters - Automated Curriculum Support for Educational Institutions - Privacy-First Customer Engagement for Local Bookstores

▶️ Manual·15 nodes
AGCOFIGM+6
medium

Automate HubSpot AI Email Replies with Slack Approval (n8n)

This advanced n8n automation bridges the gap between AI-driven speed and human-verified precision. By integrating Google Gemini with your HubSpot CRM, the workflow automatically generates context-aware email responses whenever a new inquiry hits your Gmail inbox. Unlike basic auto-responders, this system queries your HubSpot records—including contact history, active deals, and support tickets—to ensure every draft is personalized and accurate. To maintain brand integrity, the draft isn't sent immediately; instead, it is routed to a dedicated Slack channel via an interactive message. Your team can review, edit, or approve the reply with a single click, triggering the final send via Gmail. This eliminates the manual overhead of switching between tabs to find customer data and drafting repetitive emails from scratch. It is the perfect solution for scaling customer operations without hiring additional headcount, ensuring that every outbound communication is data-backed and professionally vetted. The workflow utilizes LangChain agents for intelligent reasoning, filtering out internal noise to focus purely on high-value customer interactions. **Common Use Cases:** - High-priority sales lead nurturing where quick, data-informed follow-ups are critical for conversion. - Technical support escalation where AI drafts troubleshooting steps based on existing HubSpot ticket history. - Account management automation for handling routine client inquiries with personalized data from active deals.

Trigger·13 nodes