HubSpot Collect Slice

Overview

HubSpot is a developer and marketer of software products for inbound marketing and sales. It was founded by Brian Halligan and Dharmesh Shah in 2006. Its products and services aim to provide tools for social media marketing, content management, web analytics and search engine optimization.

This datasource slice collects data from a HubSpot API and writes it to S3 and Redshift.

Steps to add this slice to your installation

The steps to launch your slice are:

  1. Generate HubSpot API keys
  2. Specify the slice config
  3. Add the HubSpot slice

1. Generate HubSpot API keys

Setup requirements

Before getting started please make sure to have the following information:

  • Access to an active HubSpot account

Setup instructions

You need to have admin access in your HubSpot account, you can access your API key in your integrations settings through the following steps:

  1. In your HubSpot account, click your account name in the top right corner, then click Integrations.
  2. In the left sidebar menu, navigate to Integrations > API key.
  3. If a key has never been generated for your account, click Generate API key.
  4. Once an API key has been created for your account, the key will appear here. Click Copy to copy the API key to your clipboard.

2. Specify the slice config

To get a template for the HubSpot slice configuration save the output of the describe --input-parameters command as follows:

datacoral collect describe --slice-type hubspot \
--input-parameters > hubspot_parameters_file.json

Necessary input parameters:

  • api_key- your HubSpot api key

    Example templates:

{
"api_key": "test"
}

Modify the hubspot_parameters_file file to add the api_key generated from HubSpot

3. Add the Slice

datacoral collect add --slice-type hubspot --slice-name <slice-name> --parameters-file <params-file>
  • slice-name Name of your slice. A schema with your slice-name is automatically created in your warehouse
  • params-file File path to your input parameters file. Ex. hubspot_parameters_file.json

Supported load units

  • contacts: captures all the attributes for contacts that anchors all contacts within HubSpot
  • contact_lists: contact lists for a portal. contact_lists.
  • subscriptions: For a given portal, return a list of all subscriptions changes and subscription status subscriptions.
  • subscription_changes: Represents all the changes asscociated with subscriptions subscription_changes.
  • campaigns: For a given portal, return all campaign IDs sorted by recent activity associated with the portal. campaigns.
  • events: For a given portal, return a list of all the event log for events matching specified parameters events.
  • calendar_events
  • companies
  • company_property_history
  • contact_form_submissions
  • contact_list_member
  • contact_property_history
  • contact_workflow_enrollments
  • deal_company
  • deal_contact
  • deal_pipeline
  • deal_pipeline_stages
  • deal_property_history
  • deals
  • engagement_calls
  • engagement_companies
  • engagement_contacts
  • engagement_deals
  • engagement_email_bcc
  • engagement_email_cc
  • engagement_email_to
  • engagement_emails
  • engagement_meetings
  • engagement_notes
  • engagement_tasks
  • engagements
  • forms
  • line_item_property_history
  • line_items
  • owners
  • product_property_history
  • products
  • workflow_details
  • workflow_performance
  • workflows

Slice output

Output of this slice is stored in S3 and Redshift.

AWS S3 Data stored in AWS S3 is partitioned by date and time in the following bucket s3//:customer_installation.datacoral/<sliceName>

AWS Redshift: Schema - schema name will be same as a slice-name. Tables produced by the slice are:

- schema.contacts
- schema.contact_lists
- schema.subscriptions
- schema.subscription_changes
- schema.campaigns
- schema.events
- schema.calendar_events
- schema.companies
- schema.company_property_history
- schema.contact_form_submissions
- schema.contact_list_member
- schema.contact_property_history
- schema.contact_workflow_enrollments
- schema.deal_company
- schema.deal_contact
- schema.deal_pipeline
- schema.deal_pipeline_stages
- schema.deal_property_history
- schema.deals
- schema.engagement_calls
- schema.engagement_companies
- schema.engagement_contacts
- schema.engagement_deals
- schema.engagement_email_bcc
- schema.engagement_email_cc
- schema.engagement_email_to
- schema.engagement_emails
- schema.engagement_meetings
- schema.engagement_notes
- schema.engagement_tasks
- schema.engagements
- schema.forms
- schema.line_item_property_history
- schema.line_items
- schema.owners
- schema.product_property_history
- schema.products
- schema.workflow_details
- schema.workflow_performance
- schema.workflows

Questions? Interested?

If you have questions or feedback, feel free to reach out at hello@datacoral.co or Request a demo