Skip to main content

HubSpot setup

For an overview of what the HubSpot connector indexes and how permissions are enforced, see Overview.

Requirements​

Technical requirements​

  • An active HubSpot account (works on both GCP and AWS deployments).
  • Access to the Glean admin console.

Credential requirements​

  • A HubSpot private app Access Token and Client Secret.
  • Your HubSpot account (portal) ID.
  • These credentials must be entered securely in the Glean admin console.

Permission requirements​

A HubSpot super admin must create the integration (private app). The private app requires the following scopes:

  • crm.objects.users.read
  • crm.objects.owners.read
  • crm.objects.contacts.read
  • crm.objects.deals.read
  • crm.objects.companies.read
  • crm.objects.tickets.read
  • crm.schemas.tickets.read

These scopes allow the connector to read the CRM objects and owner/user data needed to enforce permissions during search.

Existing apps that use the legacy tickets scope remain supported. HubSpot's default backward compatibility setting keeps these apps working during the migration. Glean accepts either tickets or both granular ticket read scopes. You don't need to grant both forms. See Update your app to use granular scopes (Beta).

Before you save the connector in Glean, complete the HubSpot private app steps in Configuration and Setup (app creation, scopes, webhooks, and credentials).

Configuration and setup​

Configuring the HubSpot connector involves creating a private app in HubSpot, granting it the required scopes, setting up webhook subscriptions, and then entering the resulting credentials in Glean.

Prerequisites​

Create a private app​

Initial steps​

  1. In HubSpot, click the settings icon in the main navigation bar.
  2. Navigate to Integrations > Private Apps.
  3. Click Create a private app.
  4. On the Basic Info tab, enter a name, logo, and description for the app.

Grant scopes​

  1. Go to the Scopes tab.
  2. Click to add scopes.
  3. Search for and select each of the following required scopes:
    • crm.objects.users.read
    • crm.objects.owners.read
    • crm.objects.contacts.read
    • crm.objects.deals.read
    • crm.objects.companies.read
    • crm.objects.tickets.read
    • crm.schemas.tickets.read
  4. Click Create app, then confirm creation.
note

If you previously set up the HubSpot connector using a private app, add the crm.objects.owners.read scope if it isn't already present. Existing apps can keep the legacy tickets scope. HubSpot preserves the access token when you edit scopes, so you don't need to rotate the token or update Secret Manager.

Webhook subscriptions​

  1. In the private app, go to the Webhooks tab.
  2. Click Create subscription.
  3. Select the object type to subscribe to:
    • Contact
    • Company
    • Deal
    • Ticket
  4. Select the event type(s) to subscribe to:
    • Created
    • Deleted
    • Restored
    • Association changed
  5. Repeat for each object type and event type combination you want to keep in sync in real time.
  6. Save the webhook subscriptions.
  7. Confirm the target URL and subscription settings are active.

Enter the app credentials in Glean​

  1. In the Glean admin console, enter your HubSpot Account ID.
  2. Enter the private app's Access Token and Client Secret.
  3. Save the connector configuration.

See also​