October 30, 2025
3 min
read

Hi there,

At Lively Apps, we’ve always believed that Confluence should be more than a documentation space.
It should be the place where work happens. Where teams align, decisions are made, and information stays alive.

But for many marketing and operations teams, there’s always been one persistent gap: data.

Campaigns, deals, and customer metrics live in HubSpot.
Meetings, planning, and strategy discussions live in Confluence.
And somewhere between those tools, the context gets lost.

That gap might seem small, but it’s the reason why so many Confluence pages quietly drift out of sync with reality.
By the time a report is exported, formatted, and shared, the data behind it has already changed — and decisions get made on outdated information.

We built PocketQuery to close that gap.

The Challenge: Making Data and Collaboration Speak the Same Language

Connecting Confluence to data isn’t new. You can link spreadsheets, embed dashboards, or attach CSVs , but none of those solutions feel native. They pull you out of the flow of work.

The challenge we faced was to make Confluence and HubSpot communicate directly.

It wasn’t just about displaying numbers; it was about creating trust.
If a marketing lead opens a campaign report inside Confluence, they shouldn’t have to wonder:

“Is this still accurate?”

That question became our design goal.

Building the Bridge Between HubSpot and Confluence

HubSpot’s APIs are powerful, structured, well-documented, and perfect for developers.
But they’re also complex. They return deeply nested JSON, they require pagination, and they demand secure authentication handling.

PocketQuery was already built for this kind of work.
As an integration layer for Confluence, it connects to SQL databases, REST APIs, and third-party services and and transforms the results into readable content directly on Confluence pages.

To make HubSpot part of that ecosystem, we introduced a REST Data Source Type designed to take care of the technical hurdles for you.

✅ OAuth2 authentication
✅ Custom endpoints
✅ Automated pagination
✅ Response flattening

OAuth2 authentication, custom endpoints, automated pagination, and response flattening it’s all handled quietly in the background.

Instead of writing code, you can now define a simple request, like:


1 GET /crm/v3/objects/deals

…and see it translated into structured, readable data inside Confluence.

Step-by-Step: Connecting HubSpot to PocketQuery

If your team uses HubSpot to track deals, campaigns, or marketing performance, here’s how to bring that live data into Confluence.

1. Create a HubSpot Data Source

Before you start, make sure your HubSpot account has API access enabled.
You’ll need to either create a Private App (to generate an API token) or configure OAuth authentication.
👉 You can find a detailed setup guide here: HubSpot prerequisites for PocketQuery

Once your HubSpot connection is ready:
In Confluence, open PocketQuery → Data Sources → Add New → REST.
You can authenticate using your HubSpot Private App Token or OAuth credentials.

Example configuration:


1 {
2   "url": "https://api.hubapi.com/crm/v3/objects/deals",
3   "headers": {
4     "Authorization": "Bearer YOUR_PRIVATE_APP_TOKEN"
5   }
6 }

That’s it, Confluence is now connected to your live HubSpot data.

2. Build a Query

Next, go to Queries → Add New and choose your HubSpot data source.

Example request:


1 GET /crm/v3/objects/deals?properties=dealname,amount,dealstage

You can even use parameters to make queries reusable:


1 GET /crm/v3/objects/deals?properties=dealname,amount,dealstage&limit=$limit

Now you can filter HubSpot data right inside Confluence, without ever opening HubSpot.

3. Turn Raw Data into Readable Insights

JSON output is great for APIs - not for meetings.
That’s where PocketQuery Templates come in.

With a few lines of HTML or Velocity, you can turn nested JSON into a clean, readable report:


1 <table>
2   <tr><th>Deal Name</th><th>Amount</th><th>Stage</th></tr>
3   #foreach ($deal in $PocketQueryResult)
4     <tr>
5       <td>$deal.properties.dealname</td>
6       <td>$deal.properties.amount</td>
7       <td>$deal.properties.dealstage</td>
8     </tr>
9   #end
10 </table>

Once published, your Confluence page displays a live, auto-updating HubSpot report - no manual refreshes, no exports.

4. Preview Before Publishing

Our Query Preview feature lets you test everything before going live.
You can validate your output, tweak templates, and confirm data accuracy - all in one place.

No more broken macros, no trial-and-error debugging.
Just instant confidence in what your team sees.

5. Keep It Reliable
PocketQuery is designed to be admin-driven.
Admins create and manage the data connections and queries, while team members can easily add those queries as macros on any Confluence page, exactly where they need it.

🔗 Example HubSpot API Endpoints for PocketQuery

Endpoint Description Example Use Case in Confluence
/crm/v3/objects/contacts Fetches contact details such as name, email, and company. Build a live list of new leads or newsletter subscribers.
/crm/v3/objects/deals Returns all deals, including deal name, stage, and amount. Show your current sales pipeline and deal progress inside Confluence.
/crm/v3/objects/companies Retrieves company records connected to deals or contacts. Display key accounts or active customer companies for team overview.
/crm/v3/objects/tickets Accesses support tickets and service requests. Create a customer support dashboard inside Confluence.
/marketing/v3/emails/statistics Returns email campaign performance data. Embed live newsletter metrics like open and click rates into project pages.
/analytics/v2/reports Pulls analytics data for web traffic or campaign performance. Combine website engagement data with project documentation.
/crm/v3/associations/deals/contacts Shows relationships between deals and contacts. Map customers to active deals for cross-functional visibility.
/crm/v3/owners Lists HubSpot users and their associated records. Display who owns which deals or accounts across teams.
/crm/v3/pipelines/deals Retrieves deal stages and pipeline structure. Visualize your sales funnel directly on a Confluence dashboard.

Why It Matters: Real Teams, Real Alignment

When your HubSpot data lives directly inside Confluence, something powerful happens:
Marketing, Sales, and Operations teams start speaking the same language.

No more Slack messages asking for the “latest numbers.”
No more version conflicts between spreadsheets.
Just one live, shared source of truth, right where decisions happen.

Teams are already using PocketQuery to:

  • Track live campaign performance in planning spaces
  • Monitor deals and pipelines for revenue meetings
  • Combine CRM insights with project documentation

The result?
Real-time collaboration that actually stays in sync with your business reality.

What’s Next

This HubSpot use case is part of a larger journey.
As Atlassian moves toward a Cloud-first future, we’re shaping PocketQuery to be ready for it.

HubSpot is just one of many possibilities.
The same power applies to SQL databases, REST APIs, GitHub, or even your own custom data sources.

Our goal isn’t just to display data in Confluence.
It’s to make Confluence the place where information lives.

Explore It Yourself

You can follow the full setup guide here:
👉 How to Connect HubSpot with PocketQuery for Confluence Cloud

Or try PocketQuery yourself, free on the Atlassian Marketplace.

Best, Alice

Blog

Our latest posts