How to get a HubSpot API key (a service key)

The clicks to get your HubSpot API key, the scopes to pick per object, and how to tell when you need an app instead.

HubSpot: 1 of 79 tools

  • HubSpotService key (public beta)Service key, sent as a Bearer token. It replaces private apps: legacy private apps can no longer be created since October 26, 2026 (September 28, 2026 for accounts created on or after that date). Existing ones keep working: Development > Legacy apps > the app > Auth tab > Show token. A service key only makes REST calls; webhooks need an app. ยท Contacts, companies, deals, tickets, lists and import scopes are available to all accounts; custom object scopes need Enterprise
    Where to click
    Development > Keys > Service keys > Create service key > enter a name > Add new scope > check each scope > Update > Create > confirm > click the key's name > Show > Copy
    Scopes or permissions
    Pick scopes per object, read and write separately: crm.objects.contacts.read and crm.objects.contacts.write, crm.objects.companies.read and crm.objects.companies.write, crm.objects.deals.read and crm.objects.deals.write, crm.objects.tickets.read and crm.objects.tickets.write, crm.lists.read and crm.lists.write, crm.import to import records. A key can only get scopes its creator already has. Super admins and users with the Developer tools access permission can create keys.

    Source: developers.hubspot.com (opens in a new tab), developers.hubspot.com: scopes (opens in a new tab), developers.hubspot.com: private apps overview (opens in a new tab), developers.hubspot.com: legacy private app creation sunset (opens in a new tab), developers.hubspot.com: service keys (opens in a new tab)

Photo of Utku Zihnioglu

By

ยท CEO & co-founder

Updated Nov 11, 2026

Shorter page: the tool first, the answer in a few lines.

How to get a HubSpot API key has changed: HubSpot no longer issues the old account-wide key, and new private apps can no longer be created. What you create now is a service key. In HubSpot, open Development, then Keys and Service keys, create a key, add the scopes it needs and copy it. You send it as a Bearer token.

The steps above come from HubSpot's service keys documentation and its scopes reference, with the day we last checked them.

Pick only the scopes you need

Scopes are picked per object, with read and write chosen separately. A sync that only reads contacts needs the contacts read scope and nothing else, and imports take a scope of their own.

A key can only get scopes its creator already has, so a teammate with narrow access makes a narrow key. Super admins and users with the Developer tools access permission can create keys; anyone else asks one of them. Custom object scopes need an Enterprise account.

Name each key after the job it does, not the person who made it, so you can still tell later what it was for.

If the menu does not match

Service keys were still in public beta when we checked, so menu names may move. HubSpot's changelog also lists the page under Settings, Integrations, Service Keys, so try that path before you assume you lack access.

If you already run a legacy private app, keep its token. It sits under Development, Legacy apps, the app, then its Auth tab.

What to do next

Store the key in a password manager, then test it with one read:

curl -H "Authorization: Bearer $HUBSPOT_SERVICE_KEY" \
  "https://api.hubapi.com/crm/v3/objects/contacts?limit=1"
curl -H "Authorization: Bearer $HUBSPOT_SERVICE_KEY" \
  "https://api.hubapi.com/crm/v3/objects/contacts?limit=1"
curl -H "Authorization: Bearer $HUBSPOT_SERVICE_KEY" \
  "https://api.hubapi.com/crm/v3/objects/contacts?limit=1"

If it fails, compare the key's scopes with the object you asked for. Every call from there counts against HubSpot API limits by plan and app type.

To connect HubSpot to Oneprofile you need no key: sign in to HubSpot from Oneprofile once and access stays current on its own. It is also the only way to get HubSpot's changes as they happen, because HubSpot sends live changes only to an app the account installed.

How to get a HubSpot API key: questions

Does HubSpot still have API keys?

Not the old account-wide kind, which HubSpot retired. For REST calls into your own account it now points you to service keys: a token you create with the scopes you pick and send as a Bearer token. Legacy private app tokens you already have keep working.

Can I still create a HubSpot private app?

No. HubSpot no longer lets you create legacy private apps, so a new integration starts with a service key or an app. A private app you already have keeps working, and its token is still behind Show token on the app's Auth tab.

Can a HubSpot service key receive webhooks?

No. A service key only makes REST API calls. Webhooks, UI extensions and the rest of HubSpot's developer platform need an app, built as a project with static auth for one account or OAuth for many.

Does this page ask for my HubSpot key?

No. The tool above only shows where to click and which scopes to pick. It has no field for a key and stores none, so paste your key only into the tool that will use it.

About this article

Photo of Utku Zihnioglu

Utku Zihnioglu

CEO & co-founder

Serial entrepreneur who built infrastructure companies handling billions of requests. Now leads engineering at Oneprofile, which finds the people worth talking to, researches each one, and follows up until they reply.

Drafted with AI from our product docs and code. Utku Zihnioglu answers for what it says.

Connect HubSpot without a key

Sign in to HubSpot from Oneprofile once, and access stays current on its own.

Free plan: 200 credits a month, 3 integrations, no card

Connect HubSpot without a key

Sign in to HubSpot from Oneprofile once, and access stays current on its own.

Free plan: 200 credits a month, 3 integrations, no card