Skip to content
MoveWorkflows

Pipedream HubSpot steps in n8n

Updated 2026-10-21 · 3 min read · n8n: HubSpot (Native n8n node)

HubSpot workflows on Pipedream sync leads in and out of the CRM: a form or Stripe payment creates or updates a contact, a deal moving stages posts to Slack. n8n has a native HubSpot node and a webhook-based HubSpot Trigger. The objects are the same; the credentials and the trigger setup differ.

The n8n side

HubSpot node (n8n-nodes-base.hubspot):

Resource Operations
Contact Create/Update, Delete, Get, Get All, Get Recently Created/Updated, Search
Contact List Add, Remove
Company Create, Delete, Get, Get All, Get Recently Created/Modified, Search by Domain, Update
Deal Create, Delete, Get, Get All, Get Recently Created/Modified, Search, Update
Engagement Create, Delete, Get, Get All
Form Get Fields, Submit
Ticket Create, Delete, Get, Get All, Update

HubSpot Trigger (registers a webhook): Created, Deleted and Property changed for Company, Contact, Deal and Ticket; Contact privacy deleted; Conversation events.

What maps where

Pipedream (app hubspot) In n8n Status
Create or Update Contact, Batch Create or Update Contact HubSpot → Contact → Create/Update (upsert by email) manual
Add Contact to List Contact List → Add manual
Add Note to Contact Engagement → Create (type Note) manual
Create Deal, Update Deal Deal → Create / Update manual
Batch Create Companies Company → Create, once per item manual
New Contact Property Change, New Company Property Change HubSpot Trigger, Property changed manual, one trigger only
New Deal In Stage HubSpot Trigger (Deal property changed on dealstage) + If node manual
New Contact Added to List, custom object events Schedule Trigger + HTTP Request polling manual
Code step with @hubspot/api-client and this.hubspot.$auth.oauth_access_token Code node; token becomes HUBSPOT_OAUTH_ACCESS_TOKEN automatic, review

HubSpot actions are not in the converter's automatic list; the report shows each step with its props (email, properties, pipeline, stage) as a comment in the placeholder node.

Credentials

n8n's HubSpot credential page lists three methods:

  • Service Key – recommended for the node (Authentication: Service Key). Service keys are in public beta at HubSpot. Legacy private-app tokens still work.
  • OAuth2 – for the node, with your own HubSpot app.
  • Developer API key – required for the HubSpot Trigger, together with a public app's Client ID, Client Secret and App ID.

The old HubSpot API key is deprecated. Pipedream's OAuth connection does not carry over, so plan the HubSpot app setup before switching the trigger.

Typical migration: Stripe customer to HubSpot

Pipedream: Stripe New Customer → HubSpot Create or Update Contact → Slack. n8n: Stripe Trigger (customer.created) → HubSpot → Contact → Create/Update (email, name, lifecycle stage) → Slack.

Pitfalls

  • One webhook per app. Activating a second HubSpot Trigger disables the first. Use one trigger with several events and a Switch node.
  • Rate limits. Private apps get a burst of 100 requests per 10 seconds on Free and Starter, 190 on Pro and Enterprise; the daily limit (250k to 1M by tier) is shared by all apps in the account. The CRM Search API has its own, stricter limit and sends no rate-limit headers.
  • Property internal names. Use internal names (lifecyclestage), not labels. Pipedream props already store internal names; copy them as they are.
  • Associations. Linking a contact to a company or deal often needs an extra HTTP Request to the associations API.

How to move your HubSpot workflows

  1. Export the workflows from Pipedream.
  2. Upload on /convert; the free report lists HubSpot steps and the credentials to create.
  3. Download the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.

Guide: Pipedream to n8n; check code that uses @hubspot/api-client in the code step checker. Related: Salesforce, Gmail, Slack.

FAQ

Which credential should I use for the HubSpot node?
n8n recommends a Service Key (credential HubSpot Service Key). OAuth2 also works for the node. The HubSpot Trigger needs a Developer API key with a public app.
Can I run two HubSpot Trigger workflows?
Not with one HubSpot app: n8n's docs say HubSpot allows only one webhook at a time, so activating a second HubSpot Trigger stops the previous one. Put all events in one trigger and route with a Switch node.
Do HubSpot steps convert automatically?
Not yet. HubSpot actions arrive as marked placeholders with their props; code steps that call the HubSpot API convert automatically with the token as a variable.
What about custom objects?
The n8n node has no custom object resource. Use HTTP Request with the HubSpot credential against the CRM objects API.

Related

Sources