The HubSpot component is an application component that allows users to use HubSpot application to do various tasks.
It can carry out the following tasks:
The component definition and tasks are defined in the definition.yaml and tasks.yaml files respectively.
Setup
In order to communicate with HubSpot, the following connection details need to be
provided. You may specify them directly in a pipeline recipe as key-value pairs
within the component's setup block, or you can create a Connection from
the Integration Settings
page and reference the whole setup as setup: ${connection.<my-connection-id>}.
Field
Field ID
Type
Note
Token (required)
token
string
Fill in your HubSpot private app access token. Go here for more information.
Supported Tasks
Get Contact
Get contact information using contact ID or Email
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_GET_CONTACT
Contact ID or Email (required)
contact-id-or-email
string
Input contact ID or email. If the input has @, it will search the contact using email.
Output
Field ID
Type
Description
Owner ID (optional)
owner-id
string
The user who is assigned to the object.
Email Address (optional)
email
string
Email address.
First Name (optional)
first-name
string
First name.
Last Name (optional)
last-name
string
Last name.
Phone Number (optional)
phone-number
string
Phone number. If you plan to use the number formatting feature in HubSpot, use country code + phone number. Example: +886xxxxxxxxx.
Company (optional)
company
string
Company.
Job Title (optional)
job-title
string
Job title.
Lifecycle Stage (optional)
lifecycle-stage
string
Lifecycle stages are used to track how contacts or companies move forward in your process. Default format is in small letters, all words are combined. Example: salesqualifiedlead. However, remember to check internal value for custom fields.
Lead Status (optional)
lead-status
string
The contact's sales, prospecting or outreach status. Default format is in capital letters, with _ as space. Example: IN_PROGRESS. However, remember to check internal value for custom fields.
Contact ID
contact-id
string
Contact ID.
Create Contact
Create new contact
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_CREATE_CONTACT
Owner ID
owner-id
string
The user who is assigned to the object.
Email Address (required)
email
string
Email address.
First Name
first-name
string
First name.
Last Name
last-name
string
Last name.
Phone Number
phone-number
string
Phone number. If you plan to use the number formatting feature in HubSpot, use country code + phone number. Example: +886xxxxxxxxx.
Company
company
string
Company.
Job Title
job-title
string
Job title.
Lifecycle Stage
lifecycle-stage
string
Lifecycle stages are used to track how contacts or companies move forward in your process. Default format is in small letters, all words are combined. Example: salesqualifiedlead. However, remember to check internal value for custom fields.
Lead Status
lead-status
string
The contact's sales, prospecting or outreach status. Default format is in capital letters, with _ as space. Example: IN_PROGRESS. However, remember to check internal value for custom fields.
Create Object -> Deal Association Using Deal IDs
create-deals-association
array[string]
Existing deal IDs to be associated with the object.
Create Object -> Company Association Using Company IDs
create-companies-association
array[string]
Existing company IDs to be associated with the object.
Create Object -> Ticket Association Using Ticket IDs
create-tickets-association
array[string]
Existing ticket IDs to be associated with the object.
Output
Field ID
Type
Description
Contact ID
contact-id
string
Contact ID.
Get Deal
Get deal information using deal ID
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_GET_DEAL
Deal ID (required)
deal-id
string
Input deal ID.
Output
Field ID
Type
Description
Owner ID (optional)
owner-id
string
The user who is assigned to the object.
Deal Name
deal-name
string
Deal name.
Pipeline
pipeline
string
A pipeline is the place where you document and manage how your prospects move through the steps of your sales process. HubSpot uses interval value rather than the name displayed in the view.
Deal Stage
deal-stage
string
Deal stages allow you to categorize and track the progress of the deals that you are working on. Default format is in small letters, all words are combined. Example: qualifiedtobuy. However, remember to check internal value for custom fields.
Amount (optional)
amount
number
The total amount of the deal.
Deal Type (optional)
deal-type
string
The type of deal. Default format is in small letters, all words are combined. Example: newbusiness. However, remember to check internal value for custom fields.
Close Date (optional)
close-date
string
Date the deal was closed. Set automatically by HubSpot. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Create Date (optional)
create-date
string
Create date. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Associated Contact IDs (optional)
associated-contact-ids
array[string]
Contact IDs associated with the object.
Create Deal
Create new deal
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_CREATE_DEAL
Owner ID
owner-id
string
The user who is assigned to the object.
Deal Name (required)
deal-name
string
Deal name.
Pipeline (required)
pipeline
string
A pipeline is the place where you document and manage how your prospects move through the steps of your sales process. HubSpot uses interval value rather than the name displayed in the view.
Deal Stage (required)
deal-stage
string
Deal stages allow you to categorize and track the progress of the deals that you are working on. Default format is in small letters, all words are combined. Example: qualifiedtobuy. However, remember to check internal value for custom fields.
Amount
amount
number
The total amount of the deal.
Deal Type
deal-type
string
The type of deal. Default format is in small letters, all words are combined. Example: newbusiness. However, remember to check internal value for custom fields.
Close Date
close-date
string
Date the deal was closed. Set automatically by HubSpot. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Create Object -> Contact Association Using Contact IDs
create-contacts-association
array[string]
Existing contact IDs to be associated with the object.
Output
Field ID
Type
Description
Deal ID
deal-id
string
Deal ID.
Update Deal
Update existing deal
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_UPDATE_DEAL
Deal ID (required)
deal-id
string
Input deal ID.
Owner ID
owner-id
string
The user who is assigned to the object.
Deal Name
deal-name
string
Deal name.
Pipeline
pipeline
string
A pipeline is the place where you document and manage how your prospects move through the steps of your sales process. HubSpot uses interval value rather than the name displayed in the view.
Deal Stage
deal-stage
string
Deal stages allow you to categorize and track the progress of the deals that you are working on. Default format is in small letters, all words are combined. Example: qualifiedtobuy. However, remember to check internal value for custom fields.
Amount
amount
number
The total amount of the deal.
Deal Type
deal-type
string
The type of deal. Default format is in small letters, all words are combined. Example: newbusiness. However, remember to check internal value for custom fields.
Close Date
close-date
string
Date the deal was closed. Set automatically by HubSpot. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Create Object -> Contact Association Using Contact IDs
create-contacts-association
array[string]
Existing contact IDs to be associated with the object.
Output
Field ID
Type
Description
Updated by User ID
updated-by-user-id
string
User ID that updated the deal.
Updated At
updated-at
string
The time when the deal was updated.
Get Company
Get company information using company ID
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_GET_COMPANY
Company ID (required)
company-id
string
Input company ID.
Output
Field ID
Type
Description
Owner ID (optional)
owner-id
string
The user who is assigned to the object.
Company Name (optional)
company-name
string
Company name.
Company Domain (optional)
company-domain
string
The domain name of the company.
Description (optional)
description
string
Description of the company.
Phone Number (optional)
phone-number
string
Phone number of the company. If you plan to use the number formatting feature in HubSpot, use country code + phone number. Example: +886xxxxxxxxx.
Industry (optional)
industry
string
The industry the company belongs to. Default format is in capital letters, with _ as space. Example: BROADCAST_MEDIA.
Company Type (optional)
company-type
string
Type of company. Default format is capital letter. Example: RESELLER.
City (optional)
city
string
City.
State (optional)
state
string
State.
Country (optional)
country
string
Country.
Postal Code (optional)
postal-code,
string
Postal code.
Time Zone (optional)
time-zone
string
Time zone.
Annual Revenue (optional)
annual-revenue
number
Annual revenue.
Total Revenue (optional)
total-revenue
number
Total revenue. Calculated automatically by HubSpot.
Linkedin Page (optional)
linkedin-page
string
Linkedin page of the company.
Associated Contact IDs (optional)
associated-contact-ids
array[string]
Contact IDs associated with the object.
Create Company
Create new company
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_CREATE_COMPANY
Owner ID
owner-id
string
The user who is assigned to the object.
Company Name
company-name
string
Company name.
Company Domain (required)
company-domain
string
The domain name of the company.
Description
description
string
Description of the company.
Phone Number
phone-number
string
Phone number of the company. If you plan to use the number formatting feature in HubSpot, use country code + phone number. Example: +886xxxxxxxxx.
Industry
industry
string
The industry the company belongs to. Default format is in capital letters, with _ as space. Example: BROADCAST_MEDIA.
Company Type
company-type
string
Type of company. Default format is capital letter. Example: RESELLER.
City
city
string
City.
State
state
string
State.
Country
country
string
Country.
Postal Code
postal-code,
string
Postal code.
Time Zone
time-zone
string
Time zone.
Annual Revenue
annual-revenue
number
Annual revenue.
Linkedin Page
linkedin-page
string
Linkedin page of the company.
Create Object -> Contact Association Using Contact IDs
create-contacts-association
array[string]
Existing contact IDs to be associated with the object.
Output
Field ID
Type
Description
Company ID
company-id
string
Company ID.
Get Ticket
Get ticket information using ticket ID
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_GET_TICKET
Ticket ID (required)
ticket-id
string
Input ticket ID.
Output
Field ID
Type
Description
Owner ID (optional)
owner-id
string
The user who is assigned to the object.
Ticket Name
ticket-name
string
Ticket name.
Ticket Status
ticket-status
string
The pipeline stage that contains this ticket. Default format is number. Example: 1. However, remember to check internal value for custom fields. Note: In Instill AI, ticket-status is displayed as string because of the possible custom internal value.
Pipeline
pipeline
string
A pipeline organizes and tracks the progression of tickets through various stages of resolution within your support process. HubSpot uses interval value rather than the name displayed in the view.
Categories (optional)
categories
array[string]
The main reason customer reached out for help. Default format is in capital letters. Example: BILLING_ISSUE. However, remember to check internal value for custom fields.
Priority (optional)
priority
string
The level of attention needed on the ticket. Default format is in capital letters. Example: MEDIUM. However, remember to check internal value for custom fields.
Source (optional)
source
string
Channel where ticket was originally submitted. Default format is in capital letters. Example: EMAIL.
Record Source (optional)
record-source
string
How this record was created.
Create Date (optional)
create-date
string
Create date. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Last Modified Date (optional)
last-modified-date
string
Last modified date. Format is in ISO 8601. Example: 2024-07-01T11:47:40.388Z.
Associated Contact IDs (optional)
associated-contact-ids
array[string]
Contact IDs associated with the object.
Create Ticket
Create new ticket
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_CREATE_TICKET
Owner ID
owner-id
string
The user who is assigned to the object.
Ticket Name (required)
ticket-name
string
Ticket name.
Ticket Status (required)
ticket-status
string
The pipeline stage that contains this ticket. Default format is number. Example: 1. However, remember to check internal value for custom fields. Note: In Instill AI, ticket-status is displayed as string because of the possible custom internal value.
Pipeline (required)
pipeline
string
A pipeline organizes and tracks the progression of tickets through various stages of resolution within your support process. HubSpot uses interval value rather than the name displayed in the view.
Categories
categories
array[string]
The main reason customer reached out for help. Default format is in capital letters. Example: BILLING_ISSUE. However, remember to check internal value for custom fields.
Priority
priority
string
The level of attention needed on the ticket. Default format is in capital letters. Example: MEDIUM. However, remember to check internal value for custom fields.
Source
source
string
Channel where ticket was originally submitted. Default format is in capital letters. Example: EMAIL.
Create Object -> Contact Association Using Contact IDs
create-contacts-association
array[string]
Existing contact IDs to be associated with the object.
Output
Field ID
Type
Description
Ticket ID
ticket-id
string
Ticket ID.
Update Ticket
Update existing ticket
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_UPDATE_TICKET
Owner ID
owner-id
string
The user who is assigned to the object.
Ticket ID (required)
ticket-id
string
Input ticket ID.
Ticket Name
ticket-name
string
Ticket name.
Ticket Status
ticket-status
string
The pipeline stage that contains this ticket. Default format is number. Example: 1. However, remember to check internal value for custom fields. Note: In Instill AI, ticket-status is displayed as string because of the possible custom internal value.
Pipeline
pipeline
string
A pipeline organizes and tracks the progression of tickets through various stages of resolution within your support process. HubSpot uses interval value rather than the name displayed in the view.
Categories
categories
array[string]
The main reason customer reached out for help. Default format is in capital letters. Example: BILLING_ISSUE. However, remember to check internal value for custom fields.
Priority
priority
string
The level of attention needed on the ticket. Default format is in capital letters. Example: MEDIUM. However, remember to check internal value for custom fields.
Source
source
string
Channel where ticket was originally submitted. Default format is in capital letters. Example: EMAIL.
Create Object -> Contact Association Using Contact IDs
create-contacts-association
array[string]
Existing contact IDs to be associated with the object.
Output
Field ID
Type
Description
Updated At
updated-at
string
The time when the ticket was updated.
Get Thread
Retrieve all the messages inside a thread (conversation inbox). The messages will be sorted from most recent to least recent. Note: This task uses Conversation API from HubSpot, which is still in BETA.
Contains the actual sender information (e.g.: email address).
Recipients
Field
Field ID
Type
Note
Name
name
string
The name of the recipient.
Type
type
string
Specify the category of recipient information.
Value
value
string
Contains the actual recipient information (e.g.: email address).
Insert Message
Insert message into a thread (only support email thread)
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_INSERT_MESSAGE
Thread ID (required)
thread-id
string
Input thread ID.
Sender Actor ID (required)
sender-actor-id
string
Input sender actor id. Example: A-12345678. To obtain this, it is recommended to use and copy the 'Get Thread task' sender output. For more information about actor id.
Recipients (required)
recipients
array[string]
Recipients of the message.
Channel Account ID (required)
channel-account-id
string
The ID of an account that is part of the channel-id channel. On an existing thread, it is recommended to copy channel-account-id of the most recent message on the thread.
Subject (required)
subject
string
The subject of the message.
Text (required)
text
string
The body of the message.
Output
Field ID
Type
Description
Status
status
string
The message status.
Retrieve Association
Get the object IDs associated with contact ID (contact->objects). If you are trying to do the opposite (object->contacts), it is possible using the other tasks. Example: Go to get deal task to obtain deal->contacts. Remember to check that the contact ID you input exists, because there won't be an error message if the contact ID doesn't exist.
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_RETRIEVE_ASSOCIATION
Contact ID (required)
contact-id
string
Input contact ID.
Object Type (required)
object-type
string
Input object type (CRM objects or 'Threads'). Note: CRM objects include 'Deals', 'Companies', 'Tickets', etc. Enum values
Deals
Companies
Tickets
Threads
Output
Field ID
Type
Description
Object ID Array
object-ids
array[string]
An array of object ID associated with the contact.
Object IDs Length
object-ids-length
integer
The number of object IDs.
Get Owner
Get information about HubSpot owner using either owner ID or user ID. For more information about owner, please go to here
Input
Field ID
Type
Description
Task ID (required)
task
string
TASK_GET_OWNER
ID Type (required)
id-type
string
Specify the type of ID you will use to get owner's information. Enum values
Owner ID
User ID
ID (required)
id
string
Can either be owner ID or user ID; according to the ID type you selected.
Output
Field ID
Type
Description
First Name
first-name
string
First name.
Last Name
last-name
string
Last name.
Email
email
string
Email.
Owner ID
owner-id
string
Owner ID. Usually used to associate the owner with other objects.
User ID
user-id
string
User ID. Usually used to indicate the owner who performed the action. User ID can be seen in Update Deal task output.