For the complete documentation index, see llms.txt. This page is also available as Markdown.

HubSpot

Overview

Birdie's HubSpot connector imports your HubSpot data into Birdie so you can analyze it alongside your other feedback sources. It supports two kinds of data:

  • Support tickets — imported as conversations, with the ticket's emails and notes as the messages.

  • Feedback submissions (survey responses such as NPS, CSAT, and CES) — imported as individual feedback.

Once a day, Birdie fetches the records that were modified in HubSpot since the previous run.

Requirements

To authenticate, Birdie uses a HubSpot Private App access token. You create a private app in your HubSpot account and grant it read scopes for the data you want to import:

  • Tickets: tickets (read), sales-email-read, and crm.objects.notes.read

  • Feedback / survey submissions: crm.objects.feedback_submission.read

Grant only the scopes for the data types you intend to import.

Setup in HubSpot

1

Open Private Apps

In your HubSpot account, open Settings (gear icon, top right) → IntegrationsPrivate Apps.

2

Create a private app

Click Create a private app, then give it a name (e.g. "Birdie integration") and a description.

3

Configure scopes

Open the Scopes tab and enable the read scopes for the data you'll import (see Requirements above).

4

Create the app and copy the token

Click Create app. HubSpot displays the access token only once — copy it and store it securely.

Share Connection Details with Birdie

Securely provide Birdie with the following:

{
  "connection_details": {
    "entity": "tickets",
    "auth": {
      "method": "private_app",
      "access_token": "your-hubspot-private-app-token"
    }
  }
}
Section
Field
Required
Description

connection_details

entity

Yes

The data type to import: tickets or surveys. Use one connection per entity.

connection_details.auth

method

Yes

Authentication method, currently only private_app.

connection_details.auth

access_token

Yes

The private app access token (shown only once when the app is created).

To import both tickets and feedback submissions, set up two connections — one per entity.

Share credentials securely with the Birdie team. Never send credentials via email or unencrypted channels.

Data in scope

Tickets (imported as conversations)

Each HubSpot ticket is imported as a conversation. The ticket's associated emails and notes are imported as the conversation's messages, and the direction of each email (incoming vs. outgoing) is preserved. Requires the tickets, sales-email-read, and crm.objects.notes.read scopes.

Feedback submissions (imported as feedback)

HubSpot feedback submissions (survey responses such as NPS, CSAT, and CES) are imported as individual feedback records. Requires the crm.objects.feedback_submission.read scope.

Import frequency

Birdie imports once a day, fetching only the records whose Last Modified date changed since the previous run — so updates are captured without re-importing everything.

Custom fields

Birdie can import your HubSpot custom properties on tickets and feedback submissions. To bring a custom property into Birdie, configure a matching custom field in the Birdie App before the connection is set up: the field's matching column name must equal the HubSpot property name (you can give the field any label you like inside Birdie).

References

Last updated