There's a new version of the HubSpot API

We're also working on a new documentation website, you're invited to check it out and give us your feedback.

How do I create an app in HubSpot?

In HubSpot, an app is used to identify your integration. Apps can be installed on customer accounts through an OAuth connection process. Once a user installs your app on their HubSpot account, you’ll gain permission to make API calls to that account using an OAuth access token. In addition, your app will appear in the account’s Connected Apps settings page, where users can manage or uninstall it.

APIs requiring an app

Having an app in HubSpot is required to use the Timeline and Webhooks APIs. For example, only installed apps can subscribe to changes using webhooks or create custom timeline events and CRM cards. While not required, an app is also strongly recommended for the Ecommerce Bridge.

Getting started

To create an app, you need a developer account. Once you’re set up and signed in, you'll start on the developer account homepage, where you'll have the option to create your first app or create a test account. Click “Create an app."

Please note: You may create up to 100 apps per developer account.


You can also start from the Apps dashboard using the “Create app” button.


Basic info

Next, you’ll fill out some basic information and settings for your app. When users authenticate your app with their HubSpot account, they’ll see the name, description, logo, and any support contact info you provide on this page. Please note that the app name will be used wherever your app is displayed for HubSpot users. This includes when installing the app, as well as the "Powered by" footer for CRM cards and timeline events.

Auth settings

In the next tab, you’ll find your Auth settings, including the client ID and client secret. This is also where you’ll set up scopes for your app. You’ll need this information for initiating an OAuth connection between your app and HubSpot.


Click on the dropdown at the bottom of the page to add new scopes to your app. These required scopes must be included in the scope= parameter of your authorization URL or users will receive an error when trying to authorize your app. See the OAuth docs for more information about building your authorization URL and details of the individual scopes.