Knowi integrates with HubSpot CRM to pull contacts, companies, deals, tickets, products, analytics, and more into a unified analytics platform.
Combine your HubSpot CRM data with data from databases, APIs, and other SaaS tools to build cross-functional dashboards - no data warehouse required.
Overview
Connect to HubSpot via OAuth 2.0. Knowi supports 14 collections spanning CRM objects, analytics, pipelines, associations, and search - with full pagination and Cloud9QL transformation support.
Connecting
- Log in to Knowi and select "Queries" from the left sidebar.
- Click on the "New Datasource +" button and select HubSpot from the list of datasources.
- Click "Connect to HubSpot" to authorize Knowi. You will be redirected to HubSpot to approve the connection and select the HubSpot account to connect.
- After approving, you'll be redirected back to Knowi. Click "Save" to finish setup.
Scopes requested: Business intelligence, contacts, deals, tickets, line items, users, marketing events. Optional scopes include content, automation, custom objects, feedback submissions, and social.
Collections
Analytics
Retrieves analytics reports broken down by category and time period.
Required Parameters:
- Breakdown By - How to segment the data: Totals, Sessions, Sources, Geolocation, or UTM parameters (Campaign, Content, Medium, Sources).
- Time Period - Grouping: Daily, Weekly, or Monthly.
-
Start Date - Start date in
YYYYMMDDformat. Supports Knowi date tokens (e.g.,$c9_thismonth). -
End Date - End date in
YYYYMMDDformat. Supports date tokens (e.g.,$c9_today+1d).
Contacts
Retrieves CRM contacts with configurable properties and associations.
Optional Parameters:
-
Properties - Format:
properties=email,company,lastname,phone. Use the Properties collection to discover available fields. -
Associations - Format:
associations=companies,deals. Links related objects.
Default Cloud9QL:
select expand(results); select expand(properties);
Companies
Retrieves CRM company records with configurable properties and associations. Same parameter format as Contacts.
Deals
Retrieves deal records. Use the Properties collection with object type "Deals" to discover available deal properties.
Default Cloud9QL:
select expand(results); select expand(properties);
Tickets
Retrieves support ticket records with configurable properties.
Products
Retrieves product catalog records.
Quotes
Retrieves quote records from the CRM.
Feedback Submissions
Retrieves customer feedback submission data.
Owners
Retrieves HubSpot owner (user) records.
Default Cloud9QL:
select expand(results);
Properties
Retrieves property definitions for CRM objects. Useful for discovering available fields before querying Contacts, Deals, or Tickets.
Required Parameters:
- Object Type - Deals, Tickets, or Feedback Submissions.
Default Cloud9QL:
select expand(results); select name, label
Pipelines
Retrieves pipeline stage definitions.
Required Parameters:
- Object Type - Companies, Contacts, Deals, Products, or Tickets.
Custom Objects
Query any CRM object type by name, including custom objects defined in your HubSpot account.
Required Parameters:
-
Object Type - The object type name (e.g.,
deals,tickets, or your custom object name).
Optional Parameters:
- Properties - Specific properties to return.
Association Types
Retrieves the types of associations defined between two object types.
Required Parameters:
- From Object Type - Source object type.
- To Object Type - Target object type.
List Associations for Object
Retrieves all associations for a specific object instance.
Required Parameters:
- From Object Type - The object type.
- Object Id - The specific object's ID.
- To Object Type - The associated object type to retrieve.
Search
Performs a CRM search across any object type using HubSpot's Search API. Supports filtering, sorting, and property selection via a POST payload.
Required Parameters:
- Object Type - CRM objects (Companies, Contacts, Deals, Tickets, Products, Quotes, Line items, Feedback submissions) or CRM engagements (Calls, Emails, Meetings, Notes, Tasks).
-
POST Payload - JSON body with search parameters. Use
"limit": 100and"after": "$C9_POST_PAGE_INDEX"for automatic pagination.
Default POST Payload:
{"limit": 100, "after": "$C9_POST_PAGE_INDEX"}
Refer to the HubSpot Search API documentation for filter and sort options.
Common Use Cases
Deal Pipeline Analysis
select expand(results); select expand(properties); select dealname, dealstage, amount, closedate, pipeline order by amount desc;
Contact Activity Report
select expand(results); select expand(properties); select email, company, lastname, createdate, lastmodifieddate order by lastmodifieddate desc;
Ticket Resolution Metrics
select expand(results); select expand(properties); select subject, hs_pipeline_stage, createdate, hs_lastmodifieddate order by createdate desc;
Scheduling
Schedule queries to run automatically to keep CRM dashboards current. Knowi handles HubSpot's cursor-based pagination (via paging.next.link) automatically.
Notes
- HubSpot OAuth tokens expire and are automatically refreshed by Knowi using the refresh token.
- All CRM object collections use HubSpot's v3 API.
- Pagination is handled automatically through HubSpot's
paging.next.linkresponse field. - The Properties collection is helpful for discovering available fields before querying other collections.
- For the full API reference, see the HubSpot API documentation.