Prerequisites
- A HubSpot account with access to the CRM
- Permission to create a service key or a private app in that account
Creating a HubSpot Access Token
HubSpot issues two kinds of static token that both work here. They produce the sameBearer token, so pick whichever your account offers.
Private apps have moved. HubSpot reorganised its developer platform and
private apps now live under Legacy apps. Existing private app tokens keep
working — no sunset has been announced — but new integrations are steered
towards service keys, which are purpose-built for REST API access.
Option A: Service key (recommended)
- Sign in to HubSpot
- Navigate to Development → Keys → Service keys (or Settings → Integrations → Service Keys)
- Click Create service key and give it a name (e.g.
Jinba Flow) - Click Add new scope and select
crm.objects.contacts.read,crm.objects.contacts.write,crm.objects.deals.read,crm.objects.companies.read, andcrm.objects.owners.read - Click Create, then copy the generated token
Option B: Legacy private app
- Sign in to HubSpot
- Navigate to Development → Legacy apps (this is where Integrations → Private Apps used to be)
- Create a legacy app of type Private, or open an existing one
- On the Scopes tab, select
crm.objects.contacts.read,crm.objects.contacts.write,crm.objects.deals.read,crm.objects.companies.read, andcrm.objects.owners.read - Open the Auth tab, click Show token, and copy it
Setting Up in Jinba Flow
- Go to your workspace settings in Jinba Flow
- Navigate to the Secrets section
- Click Add secret and choose HUBSPOT_ACCESS_TOKEN as the type
- Enter a name and paste the token into access_token
- Click Save
Required Scopes
HubSpot’s Engagements API documents
crm.objects.contacts.write as the scope
for creating notes and tasks. If the scope picker in your account offers
object-specific engagement scopes instead, grant those. We do not grant
crm.objects.deals.write: the note and task tools only associate records with
a deal and never edit the deal itself, so leaving it off keeps the token unable
to modify deals. If a note or task create fails with HTTP 403 even so, check
which scope the error message names before adding anything.HTTP 401 or HTTP 403 almost always means one of these scopes is missing rather than the token being wrong.