Skip to main content
Technical Preview

Overview

A client-mode connector for a curated eight-operation slice of the HubSpot CRM API: list/create/get/update contacts, list/get companies, list deals, and list owners. It is meant for CRM / service edge bridges, not the full HubSpot surface. BASE_ADDRESS defaults to https://api.hubapi.com (official OpenAPI host). https://api.hubspot.com also accepts CRM calls.
HubSpot CRM requires a private app access token or OAuth Bearer token. Unauthenticated calls return HTTP 401. The legacy api-catalog-public/v1/apis catalog was sunset (HTTP 404); specs now live at public/api/spec/v1/specs. This template has not been verified with a real private-app token.

Basic Syntax

Events

List endpoints accept HubSpot query options (limit, after, properties, archived) when you extend the ENDPOINT or append them in a custom variant.

Auth

Private app or OAuth Bearer:
string
required
HubSpot private app access token or OAuth access token. Prefer a Hub secret. Never commit the token.
string
Contact record ID. Required on Getcontact and Updatecontact.
string
Company record ID. Required on Getcompany.
High-level token flow (no secrets in the template):
  1. Create a HubSpot private app with CRM scopes (contacts, companies, deals, owners) — or use an OAuth app.
  2. Copy the private app access token (or obtain an OAuth access token).
  3. Publish the token as api_token on the MQTT request payload (or inject from Hub secret upstream).
List contacts smoke:
Get contact:
Create contact (connector body is {payload}; include CRM properties):

Try it

  1. Add the connector on a lab broker (BASE_ADDRESS already points at https://api.hubapi.com).
  2. Publish token JSON to integrations/hubspot/request/Listcontacts.
  3. Subscribe to integrations/hubspot/response/Listcontacts.
  4. Contacts / companies: include contactId or companyId as needed.
Recorded factory probes without a usable token: CRM contacts/owners unauthenticated HTTP 401, invalid Bearer HTTP 401, public specs catalog HTTP 200, legacy api-catalog-public HTTP 404 (sunset), developer docs HTTP 200. lot_lint reported no findings on HubSpotRestApi.
Last modified on October 21, 2026