You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/connections/destinations/catalog/hubspot/index.md
+12-11Lines changed: 12 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,10 +5,10 @@ hide-personas-partial: true
5
5
cmode-override: true
6
6
id: 54521fd725e721e32a72eec1
7
7
---
8
-
[HubSpot](https://www.hubspot.com/) is an inbound marketing and sales platform that helps companies attract visitors, convert leads, and close customers. The `analytics.js` HubSpot Destination is open-source. You can browse the code [on GitHub](https://github.com/segmentio/analytics.js-integrations/tree/master/integrations/hubspot).
8
+
[HubSpot](https://www.hubspot.com/){:target="_blank"} is an inbound marketing and sales platform that helps companies attract visitors, convert leads, and close customers. The `analytics.js` HubSpot Destination is open-source. You can browse the code [on GitHub](https://github.com/segmentio/analytics.js-integrations/tree/master/integrations/hubspot){:target="_blank"}.
9
9
10
10
> info ""
11
-
> As of July 2022, HubSpot no longer allows new connections to authenticate with an API Key. Existing API Keys will continue to work, but to authenticate a new API connection with HubSpot, use a Private App Token. To generate a Private App access token from the HubSpot dashboard, navigate to **Integrations > Private Apps**. Segment requires the following scopes: `business-intelligence`, `crm.objects.contacts.read`, `crm.objects.contacts.write`, `crm.schemas.contacts.read`, `crm.objects.companies.read`, `crm.objects.companies.write`, `crm.schemas.companies.read`. For more information, see Hubspot's article [Private Apps](https://developers.hubspot.com/docs/api/private-apps){:target="_blank"}.
11
+
> As of July 2022, HubSpot no longer allows new connections to authenticate with an API Key. Existing API Keys will continue to work, but to authenticate a new API connection with HubSpot, use a Private App Token. To generate a Private App access token from the HubSpot dashboard, navigate to **Integrations > Private Apps**. Segment requires the following scopes: `business-intelligence`, `crm.objects.contacts.read`, `crm.objects.contacts.write`, `crm.schemas.contacts.read`, `crm.objects.companies.read`, `crm.objects.companies.write`, `crm.schemas.companies.read`. For more information, see HubSpot's article [Private Apps](https://developers.hubspot.com/docs/api/private-apps){:target="_blank"}.
12
12
13
13
> warning ""
14
14
> The HubSpot destination is not compatible with the Segment Event Tester. As result, Segment recommends using other tools to troubleshoot the HubSpot destination.
@@ -35,7 +35,7 @@ analytics.page()
35
35
```
36
36
37
37
> info ""
38
-
> Hubspot supports Page calls on Device-mode connections from Analytics.js sources
38
+
> HubSpot supports Page calls on Device-mode connections from Analytics.js sources
39
39
40
40
Analytics.js requires an initial Page call to send data to HubSpot. The [Segment snippet](/docs/connections/sources/catalog/libraries/website/javascript/quickstart/#step-2-copy-the-segment-snippet) includes this initial call by default.
HubSpot does not accept any trait keys that contain upper case letters or spaces. Segment converts any custom traits you send to lower case, and replaces spaces with an underscore.
58
58
59
-
Hubspot removes from the request any traits that aren't contact fields in HubSpot. To find out which fields you can set, check out the custom field names in **Contacts > Contact Settings**. Example field names are `firstname`, `lastname`, `company`, and `phone`.
59
+
HubSpot removes from the request any traits that aren't contact fields in HubSpot. To find out which fields you can set, check out the custom field names in **Contacts > Contact Settings**. Example field names are `firstname`, `lastname`, `company`, and `phone`.
60
60
61
61
If you specify a company name (using `traits.company.name`), it appears as a *property* of the contact (you can find it in HubSpot's UI using **About [contact] > View > View All Properties**), but it does not appear as the user's company under **[contact]'s Company**.
62
62
63
-
Hubspot tags the following fields as special fields:
63
+
HubSpot tags the following fields as special fields:
64
64
65
65
- address
66
66
- city
@@ -84,7 +84,7 @@ analytics.track("Clicked Buy Now button", {
84
84
```
85
85
86
86
> warning "Important"
87
-
> Marketing Hub subscription is required to [track calls and custom marketing events](https://knowledge.hubspot.com/analytics-tools/create-custom-behavioral-events){:target="_blank"} in HubSpot. You must have a HubSpot Enterprise account for Segment to pass traits from an Identify call to your Track call and send them as [custom events to HubSpot](https://knowledge.hubspot.com/events-user-guide-v2/using-custom-events){:target="_blank"}.
87
+
> Marketing Hub subscription is required to [manage legacy behavioral events](https://knowledge.hubspot.com/reports/analyze-and-manage-your-legacy-events){:target="_blank"} in HubSpot. You must have a HubSpot Enterprise account for Segment to pass traits from an Identify call to your Track call and send them as custom events to HubSpot.
88
88
89
89
The event will appear in your HubSpot UI but may take up to 60 minutes to appear in the graph visualization.
90
90
@@ -107,7 +107,7 @@ In this case, your HubSpot `eventId` is 'Bought Item'. If you want to use an exi
107
107
108
108
#### Setting Contact Properties on Track
109
109
110
-
Segment recommends that you send `traits` with an [Identify](/docs/connections/spec/identify/) call. You can also set HubSpot properties on a track call sent from any server-side source, as allowed by Hubspot's [events API](http://developers.hubspot.com/docs/methods/enterprise_events/http_api){:target="_blank"}. Segment recommends this method if you're running out of HubSpot API calls on the Identify requests.
110
+
Segment recommends that you send `traits` with an [Identify](/docs/connections/spec/identify/) call. You can also set HubSpot properties on a track call sent from any server-side source, as allowed by HubSpot's [events API](http://developers.hubspot.com/docs/methods/enterprise_events/http_api){:target="_blank"}. Segment recommends this method if you're running out of HubSpot API calls on the Identify requests.
111
111
112
112
Include HubSpot contact properties into the `context.traits` object:
113
113
@@ -172,7 +172,7 @@ Segment can send the following group traits to HubSpot as special properties:
172
172
173
173
### API Call Limits
174
174
175
-
HubSpot limits the total amount of hourly and daily requests Segment can make to their API on your behalf. Read more about these limits [here](https://developers.hubspot.com/apps/api_guidelines){target="_blank"}.
175
+
HubSpot limits the total amount of hourly and daily requests Segment can make to their API on your behalf. See HubSpot's [API Usage Guidelines](https://developers.hubspot.com/apps/api_guidelines){:target="_blank"} for more information.
176
176
177
177
HubSpot Plan: Free & Starter
178
178
* Maximum Number of API Calls per 10 Seconds, per Key or Token: **100**
@@ -286,7 +286,8 @@ Engage sends **Account-Level data** to HubSpot using **Identify** calls to add a
286
286
287
287
7. Enter the label for the custom property, and make sure it matches the Audience Key you wrote down from the Engage audience builder (see the tip below). Click **Next**.
288
288
289
-
> ✅ **Tip**: The audience label's “internal name” in HubSpot *must exactly match* the Segment `audience key`. You can check this by clicking the `</>` icon to the right of the Label field, and making corrections.
289
+
> success ""
290
+
> The audience label's “internal name” in HubSpot *must exactly match* the Segment `audience key`. You can check this by clicking the `</>` icon to the right of the Label field, and making corrections.
290
291
291
292
292
293

@@ -304,7 +305,7 @@ Engage sends **Account-Level data** to HubSpot using **Identify** calls to add a
304
305
305
306
### Verify the audience
306
307
307
-
You can use the [Profiles Debugger](/docs/profiles/debugger) to see the calls sent to HubSpot.
308
+
You can use the [Profiles Debugger](/docs/profiles/debugger) to see the calls sent to HubSpot.
308
309
309
310

310
311
@@ -322,7 +323,7 @@ You can also see this in the contact property history for each user record.
322
323
323
324
-**Engage Destination type**: Event Method (data is delivered to this Destination one-by-one on a realtime basis)
324
325
-**Traits and Audiences created by**: Identify calls add and update traits and audiences as traits on the user, Track calls send events for `Audience Entered` and `Audience Exited`.
325
-
-**Must create audience_name field before Engage can update those values?**: Yes, you must manually create Contact properties in Hubspot before you send Custom Traits or Audiences.
326
+
-**Must create audience_name field before Engage can update those values?**: Yes, you must manually create Contact properties in HubSpot before you send Custom Traits or Audiences.
326
327
-**Audience appears as**: A prose-text version of the audience name (for example, `Order Completed 30 Days: Yes`) where `Yes` indicates that the user is in the audience.
327
328
-**Destination rate limit**: Yes. HubSpot's rate limit depends on what account tier you have in HubSpot, but is *usually* 100 calls per ten seconds, or 10 per second.
0 commit comments