Skip to content

Commit fb4931b

Browse files
committed
Added v4
1 parent 5f67ddd commit fb4931b

20 files changed

+3208
-1
lines changed

_data/taps/schemas/hubspot/v4/hubspot-v4-foreign-keys.yml

Lines changed: 507 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
tap: hubspot
2+
version: '4'
3+
tap-repo-schemas: true
4+
tables:
5+
- name: campaigns
6+
description: 'The `{{ table.name }}` table contains info about the campaigns in
7+
your {{ integration.display_name }} account.
8+
9+
'
10+
links:
11+
doc-link: http://developers.hubspot.com/docs/methods/email/get_campaign_data
12+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/campaigns.json
13+
api-method: https://developers.hubspot.com/docs/methods/email/get_campaign_data
14+
table-details:
15+
replication-method: Full Table
16+
primary-key: id
17+
- name: companies
18+
description: 'The `{{ table.name }}` table contains info about the companies your
19+
{{ integration.display_name }} contacts belong to.
20+
21+
'
22+
links:
23+
doc-link: http://developers.hubspot.com/docs/methods/companies/get_company
24+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/companies.json
25+
api-method: https://developers.hubspot.com/docs/methods/companies/get_company
26+
table-details:
27+
replication-method: Key-based Incremental
28+
primary-key: companyId
29+
- name: contact_lists
30+
description: 'The `{{ table.name }}` table contains info about the contacts lists
31+
in your {{ integration.display_name }} account. Contact lists are used to segment
32+
contacts into groups, and there are two types: dynamic (smart lists) and static.
33+
34+
'
35+
links:
36+
doc-link: https://developers.hubspot.com/docs/methods/lists/contact-lists-overview
37+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/contact_lists.json
38+
api-method: https://developers.hubspot.com/docs/methods/lists/get_lists
39+
table-details:
40+
replication-method: Key-based Incremental
41+
primary-key: listId
42+
replication-key: updatedAt
43+
- name: contacts
44+
description: 'The `{{ table.name }}` table contains info about individual contacts
45+
in {{ integration.display_name }}.
46+
47+
48+
### Contact properties
49+
50+
51+
If properties have been set for the contact, additional fields beginning with
52+
`properties__` will be included in the table. **Note**: Contacts will only have
53+
an entry for a property if that property has been set for the contact''s record.
54+
55+
56+
{{ integration.display_name }} always types the value of `properties` fields as
57+
`STRING` despite the property type. [Refer to HubSpot''s documentation for more
58+
info](https://developers.hubspot.com/docs/methods/contacts/contacts-overview){:target="new"}.
59+
60+
'
61+
links:
62+
doc-link: https://developers.hubspot.com/docs/methods/contacts/contacts-overview
63+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/contacts.json
64+
api-method: https://developers.hubspot.com/docs/methods/contacts/get_contacts
65+
table-details:
66+
replication-method: Key-based Incremental
67+
primary-key: id
68+
replication-key: updatedAt
69+
- name: contacts_by_company
70+
description: 'The `{{ table.name }}` table contains contact and company ID pairs,
71+
allowing you to join contacts to relevant company data.
72+
73+
74+
To replicate data from this table, you must also select the parent `companies`
75+
table.
76+
77+
'
78+
links:
79+
doc-link: http://developers.hubspot.com/docs/methods/companies/get_company
80+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/contacts_by_company.json
81+
table-details:
82+
replication-method: Full Table
83+
primary-keys:
84+
- contact-id
85+
- company-id
86+
- name: custom_objects
87+
description: 'Tables for custom CRM objects in your {{ integration.display_name
88+
}} account will have the same name as the object. For example, if you have a custom
89+
object named `cars`, the table will be named `cars`.
90+
91+
92+
The fields listed below are standard fields; they are included in every custom
93+
object table. A field will be added for each property you select when configuring
94+
the table. The property names will be prefixed with `property_`. For example,
95+
if you have a property named `model`, it will appear as `property_model`.
96+
97+
'
98+
links:
99+
doc-link: https://developers.hubspot.com/docs/api/crm/crm-custom-objects
100+
singer-schema: https://github.com/singer-io/tap-hubspot/tree/master/tap_hubspot/schemas/shared/custom_objects.json
101+
table-details:
102+
replication-method: Key-based Incremental
103+
primary-key: id
104+
replication-key: updatedAt
105+
- name: deal_pipelines
106+
description: 'The `{{ table.name }}` table contains info about the `deal stage`
107+
and `pipeline` properties.
108+
109+
'
110+
links:
111+
doc-link: https://developers.hubspot.com/docs/methods/deal-pipelines/overview
112+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/deal_pipelines.json
113+
api-method: https://developers.hubspot.com/docs/methods/deal-pipelines/get-all-deal-pipelines
114+
table-details:
115+
replication-method: Full Table
116+
primary-key: pipelineId
117+
- name: deals
118+
description: 'The `{{ table.name }}` table contains info about the deals in a {{
119+
integration.display_name }} portal.
120+
121+
'
122+
links:
123+
doc-link: https://developers.hubspot.com/docs/methods/deals/deals_overview
124+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/deals.json
125+
api-method: https://developers.hubspot.com/docs/methods/deals/get-all-deals
126+
table-details:
127+
replication-method: Key-based Incremental
128+
primary-key: dealId
129+
- name: forms
130+
description: 'The `{{ table.name }}` table contains info about your {{ integration.display_name
131+
}} website forms.
132+
133+
'
134+
links:
135+
doc-link: https://developers.hubspot.com/docs/methods/forms/forms_overview
136+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/forms.json
137+
api-method: https://developers.hubspot.com/docs/methods/forms/v2/get_forms
138+
table-details:
139+
replication-method: Key-based Incremental
140+
primary-key: guid
141+
replication-key: updatedAt
142+
- name: email_events
143+
description: 'The `email_events` table contains info about email events and how
144+
recipients interact with content.
145+
146+
147+
#### Email events and {{ integration.display_name }} permissions
148+
149+
150+
Replicating this table requires **Super Admin** permissions in {{ integration.display_name
151+
}}. The Super Admin role is different than the Admin role, which you can read
152+
more about in [{{ integration.display_name }}''s documentation](https://knowledge.hubspot.com/articles/kcs_article/settings/hubspot-user-roles-guide#admin).
153+
154+
155+
If this table is selected and you don''t have Super Admin permissions in {{ integration.display_name
156+
}}, an error similar to the following will surface in the integration''s [Extraction
157+
Logs]({{ link.replication.extraction-logs | prepend: site.baseurl }}):
158+
159+
160+
```
161+
162+
tap - ERROR b''{"status":"error","message":"This oauth-token (**********) does
163+
not have proper permissions! (requires any of [email-access])", [...]
164+
165+
```
166+
167+
'
168+
links:
169+
doc-link: https://developers.hubspot.com/docs/methods/email/email_events_overview
170+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/email_events.json
171+
api-method: https://developers.hubspot.com/docs/methods/email/get_events
172+
table-details:
173+
replication-method: Key-based Incremental
174+
primary-key: id
175+
- name: engagements
176+
description: 'The `{{ table.name }}` table contains info about all the engagements
177+
in a {{ integration.display_name }} portal.
178+
179+
'
180+
links:
181+
doc-link: https://developers.hubspot.com/docs/methods/engagements/engagements-overview
182+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/engagements.json
183+
api-method: https://developers.hubspot.com/docs/methods/engagements/get-all-engagements
184+
table-details:
185+
replication-method: Key-based Incremental
186+
primary-key: engagement_id
187+
replication-key: lastUpdated
188+
- name: owners
189+
description: 'The `{{ table.name }}` table contains info about the owners that exist
190+
in your {{ integration.display_name }} portal. Owners are created and updated
191+
in {{ integration.display_name }} when new users are added or when owners are
192+
synced from Salesforce to {{ integration.display_name }}.
193+
194+
'
195+
links:
196+
doc-link: https://developers.hubspot.com/docs/methods/owners/owners_overview
197+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/owners.json
198+
api-method: https://developers.hubspot.com/docs/api/crm/owners
199+
table-details:
200+
replication-method: Key-based Incremental
201+
primary-key: Id
202+
replication-key: updatedAt
203+
- name: subscription_changes
204+
description: 'The `{{ table.name }}` table contains info about changes made subscriptions.'
205+
links:
206+
doc-link: https://developers.hubspot.com/docs/methods/timeline/timeline-overview
207+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/subscription_changes.json
208+
api-method: https://developers.hubspot.com/docs/methods/email/get_subscriptions_timeline
209+
table-details:
210+
replication-method: Key-based Incremental
211+
primary-key:
212+
- recipient
213+
- portalId
214+
- timestamp
215+
- name: tickets
216+
description: 'In HubSpot, tickets represents customer requests for help.'
217+
links:
218+
singer-schema: https://github.com/singer-io/tap-hubspot/tree/master/tap_hubspot/schemas/tickets.json
219+
api-method: https://developers.hubspot.com/docs/api/crm/tickets
220+
table-details:
221+
replication-method: Key-based Incremental
222+
primary-key: id
223+
replication-key: updatedAt
224+
- name: workflows
225+
description: 'The `workflows` table contains info about the workflows in your {{
226+
integration.display_name }} portal.
227+
228+
229+
**Note**: The `workflows` stream only supports contact-based workflows.
230+
231+
'
232+
links:
233+
doc-link: https://developers.hubspot.com/docs/methods/workflows/workflows_overview
234+
singer-schema: https://github.com/singer-io/tap-hubspot/blob/master/tap_hubspot/schemas/workflows.json
235+
api-method: https://developers.hubspot.com/docs/methods/workflows/v3/get_workflows
236+
table-details:
237+
replication-method: Key-based Incremental
238+
primary-key: id
239+
replication-key: updatedAt

0 commit comments

Comments
 (0)