I have been experimenting with Relevance AI to automate a common yet labor-intensive workflow in our product-led growth operations: the creation of enriched prospect overviews. The manual process of pulling data from HubSpot, appending enrichment data from various sources, and formatting it into a Notion page for the sales team was a significant time sink with high potential for inconsistency.
To address this, I built a multi-agent workflow that automates the entire sequence. The primary goal was to transform a raw HubSpot contact ID into a comprehensive, ready-to-use Notion document without any manual intervention. The workflow follows a clear, sequential logic:
* **Agent 1: HubSpot Data Fetcher.** This agent uses the HubSpot API (via a configured tool) to retrieve the core contact and company record. It extracts key fields such as contact name, email, associated company name, website, and any existing custom property values.
* **Agent 2: Data Enrichment Coordinator.** The output from Agent 1 is passed here. This agent is responsible for calling upon specialized sub-tools or APIs to append missing context. In my implementation, this includes:
* Using a Clearbit or similar enrichment tool to populate company industry, employee count range, and estimated revenue.
* Calling the Apollo.io API to gather recent funding news and key technographic signals.
* Querying our internal data warehouse via a SQL tool to attach the prospect's product usage metrics (e.g., last active date, feature adoption score).
* **Agent 3: Notion Page Builder.** The final agent receives the consolidated and enriched dataset from Agent 2. It structures this information using a pre-defined Notion template block structure. It creates a new page in our designated Sales Intelligence workspace, applying relevant property values (like "Enrichment Score," "Company Size") and formatting the body with headers, tables, and callouts for key signals.
The most critical technical consideration was designing the schema for data handoff between agents. Each agent's output had to be a structured JSON object with clearly typed fields to ensure the downstream agent could parse it reliably. For instance, the enrichment agent expects a specific `website` field from the HubSpot data to perform its lookups. Error handling was also configured at each step; if the HubSpot contact is not found, the workflow terminates early with a clear log message, preventing wasted API calls.
From an attribution and analytics perspective, this workflow now serves as a primary data collection point. Each generated Notion page includes a footnote with the enrichment timestamp and source IDs, creating an audit trail. Furthermore, we are logging the execution of these workflows to a dedicated BigQuery table, allowing us to analyze enrichment coverage rates and the correlation between specific enriched signals (like funding events) and subsequent deal creation velocity. The automation has reduced the lead-to-insight time from approximately 45 minutes of manual work to under 90 seconds of automated processing, with significantly improved data consistency.
Start with the question.
This sounds super cool. How long did it take you to build the workflow from start to finish? I'm always worried these automations end up being a bigger time sink to set up than they save, at least initially.
Also, what's your fallback if the enrichment data comes back empty or weird? Does the Notion page still get created?
Time is money
That initial time investment question is always the right one to ask. In my experience with similar builds, the true "time to value" is longer than the initial coding phase because you're testing edge cases and building fail-safes. The break-even point depends entirely on volume.
You've touched on the critical second point: data quality gates. A workflow like this must have conditional logic after each enrichment step. If Clearbit returns null for industry, the agent should log the gap and proceed with the HubSpot data it does have. The Notion page should still be created, but with clear visual placeholders indicating the missing information. This turns the automation into a data quality spotlight, not a blocker.
What's your threshold for proceeding? Do you have a minimum set of fields, like validated email and company domain, that must be present before page creation, or is any HubSpot contact record sufficient to trigger the sequence?
Good question. I've done a similar build connecting Pipedrive to Clearbit and then to a Google Doc. The initial setup for the agents probably took me a solid afternoon, but the real time sink was building the conditional logic and error handling - exactly what you're asking about.
My rule is that the Notion page *always* gets created if the core HubSpot contact fetch succeeds. Enrichment failures don't stop the flow, but they do get flagged. I have a "Data Gaps" section at the top of the generated page that lists missing fields (like "Industry: Enrichment Failed") so the sales rep knows it's incomplete. This way the process still saves time, and the gaps become visible for manual follow-up.
What's your threshold for what's "good enough" to send to sales? Do you require a certain number of enriched fields to be populated, or is any completed page considered a win?
Still looking for the perfect one