Skip to main content

HubSpot Component

Manage records and associations in the HubSpot CRM platform

Component key: hubspot

Changelog ↓

Description

HubSpot is a Customer Relationship Management software for inbound marketing, sales, and customer service. This component allows you to interact with the HubSpot REST API.

API Documentation

This component was built using the HubSpot API Documentation

Documentation for HubSpot's REST API used in this component can be found at https://developers.hubspot.com/docs/api/overview.

tip

If a HubSpot API endpoint doesn't have a corresponding action within this component, you can leverage the Raw Request action to make a request to any HubSpot API endpoint.

Processing HubSpot events in real-time

HubSpot requires that you provide only one webhook URL for your app, and HubSpot will send all customers' events to that URL. If you would like to detect and process changes to your customers' HubSpot accounts in real-time, see the Single-Endpoint Webhook Integrations guide on handling webhook requests from apps that require you to specify a single webhook endpoint.

Connections

Webhook Authentication

The Webhook Authentication connection is used specifically for verifying HubSpot webhook signatures to ensure webhook requests are legitimate. This connection is only used for webhook triggers and does not grant API access. It solely validates that incoming webhooks are from HubSpot by verifying the request signature.

  1. Log into HubSpot
  2. Navigate to Settings > Integrations > Private Apps.
  3. If creating a new app:
    • Click Create a private app or Create an app
    • Configure the required webhook subscriptions
  4. Navigate to the Auth or App Credentials section
  5. Copy the Client Secret value
  6. From the integration connection, fill in the required field:
    • Client Secret: The client secret from your HubSpot app, used to verify webhook signatures
  7. In the integration, ensure the trigger is configured to use the Webhook Authentication connection.

Webhook Subscriptions

  1. In your app settings, navigate to the Webhooks section
  2. Click Configure or Set up webhooks
  3. You'll need to provide:
    • Target URL: This is where HubSpot will send webhook events. This can be found in the Test Configuration > Trigger Payload section of the integration
    • Events to subscribe to: Select the specific events you want to monitor
InputNotesExample
Client Secret

The Client Secret from your HubSpot app, used to verify webhook signatures.

OAuth 2.0

Creating an App via the CLI

The app creation guide walks you through how to get up and running with a basic app that uses a boilerplate example project and schema definition.

Refer to this quick reference guide to get started on the latest version of HubSpot’s developer platform.

  1. Install the HubSpot CLI (version 7.6.0 or higher):

    npm install -g @hubspot/cli
  2. Authenticate the CLI with your HubSpot developer account:

    hs account auth
  3. Create a new app project:

    hs project create
    • Select App as the project template
    • Choose your distribution type (marketplace or private/specific accounts)
    • Select OAuth as the authentication method
    • Optionally select app features you need (Card, App Function, Settings, Webhooks, Custom Workflow Action)
  4. Configure your app by editing the generated app-hsmeta.json file:

    • Update app name, description, and required scopes
    • Add redirect URLs for OAuth authentication
  5. Upload your app project to HubSpot:

    hs project upload

    If you receive the following message you will need to change the directory to the project folder where the app was created:

    [ERROR] Unable to locate a project configuration file. Try running again from a project directory, or run `hs project create` to create a new project.
  6. Open your project in the HubSpot developer portal to retrieve credentials:

    hs project open

    Navigate to the Auth tab to copy your Client ID and Client Secret

For more details, see the HubSpot CLI documentation.

To configure your OAuth 2.0 HubSpot connection:

  • For Client ID and Client Secret enter the values from your app's Auth page
  • For Scopes choose from the available scopes based on your integration needs (see HubSpot OAuth documentation for details)
  • Under the Redirect URLs section add https://oauth2.prismatic.io/callback

Creating a Legacy app

Legacy apps will continue to work, but they won't receive new features or platform improvements from HubSpot.

  1. Create a HubSpot developer account if you don't already have one
  2. Navigate to your HubSpot developer account
  3. Click Create app to create a new public app
  4. Fill in your app details (name, description, etc.)
  5. Navigate to the Auth tab of your newly created app
  6. Copy the Client ID and Client Secret from this page
  7. Add your redirect URL as https://oauth2.prismatic.io/callback to the Redirect URLs section
  8. Configure the required scopes for your integration in the Scopes section
InputNotesExample
App ID

Provide the App ID from the HubSpot Developer Console. Required for Webhooks.

Authorize URL

The OAuth 2.0 Authorization URL for HubSpot. You can include optional scopes here.

https://app.hubspot.com/oauth/authorize?optional_scope=crm.lists.read content
Client ID

Provide the Client Id you received from the HubSpot Developer Console.

Client Secret

Provide the Client Secret you received from the HubSpot Developer Console.

Developer API Key

Provide the Developer API Key from the HubSpot Developer Console. Required for Webhooks.

Scopes

A space-delimited set of one or more scopes to get the user's permission to access.

Token URL

The OAuth 2.0 Token URL for HubSpot

https://api.hubapi.com/oauth/v1/token

Private App Access Token

Private app access tokens are recommended for testing purposes only. For production integrations, use OAuth 2.0. Private app access tokens do not expire but can be revoked at any time from your HubSpot account settings.

  1. Log into HubSpot
  2. Navigate to Settings > Integrations > Private Apps
  3. Click Create a private app
  4. Enter a name for the app and configure the required scopes
  5. After creating the app, navigate to the Auth tab
  6. Copy the Access Token displayed
  7. From the integration connection, fill in the required field:
    • Access Token: The token obtained from your HubSpot private app settings
InputNotesExample
Access Token

An access token generated when you create a private app. For testing purposes only - use OAuth 2.0 for production integrations.

Triggers

Event Type Subscription

Get notified when a HubSpot event happens. | key: eventTypeSubscription

InputNotesExample
Event Types

Events to listen for. Make sure to have the right permissions.

Connection
Overwrite Webhook Settings

HubSpot only permits one Target URL per App ID. If there's an existing webhook configuration for the current one, this execution will fail unless this toggle is enabled.

false

New and Updated Custom Records

Checks for new and updated custom records. | key: pollChangesCustomObjectsTrigger

InputNotesExample
Fetch All

Turn this ON to get more than 200 results. Note that this can be a large amount of data.

false
Connection
Object Type

The type of custom object to search for.

deal
Search Limit

The number of records to return. The maximum value is 200.

10
Search Properties

Include properties such as filters and sorts, or specify the properties to be returned. If empty, only the default properties will be returned. For more information, see https://developers.hubspot.com/docs/api/crm/search.

Show New Records

Show new records.

true
Show Updated Records

Show updated records.

true
Timeout

The maximum time a client will await a request

20000

New and Updated Records

Checks for new and updated records. | key: pollChangesTrigger

InputNotesExample
Fetch All

Turn this ON to get more than 200 results. Note that this can be a large amount of data.

false
Connection
Search Endpoint

The endpoint to search for objects or engagements. For Custom objects don't forget to fill the Object Type input.

Search Limit

The number of records to return. The maximum value is 200.

10
Search Properties

Include properties such as filters and sorts, or specify the properties to be returned. If empty, only the default properties will be returned. For more information, see https://developers.hubspot.com/docs/api/crm/search.

Show New Records

Show new records.

true
Show Updated Records

Show updated records.

true
Timeout

The maximum time a client will await a request

20000

Webhook

Receive and validate webhook requests from HubSpot for webhooks you configure. | key: webhook

InputNotesExample
Connection

{
"payload": {
"headers": {
"Accept": "*/*",
"Content-Type": "application/json",
"Host": "hooks.example.com",
"User-Agent": "HubSpot Connect 2.0 (http://dev.hubspot.com/) (namespace: webhooks-nio-http-client) - WebhooksExecutorDaemon-executor",
"X-Amz-Cf-Id": "ABCDEFGHI",
"X-Amzn-Trace-Id": "Root=1-65dd10e7-527c83667c3d96380250fd05",
"X-Forwarded-For": "54.174.62.123, 15.158.50.123",
"X-HubSpot-Request-Timestamp": "1708986599647",
"X-HubSpot-Signature": "123456789",
"X-HubSpot-Signature-v3": "123456789",
"X-HubSpot-Signature-Version": "v1",
"X-HubSpot-Timeout-Millis": "10000",
"X-Trace": ""
},
"queryParameters": null,
"rawBody": {
"data": ""
},
"body": {
"data": [
{
"eventId": 123456,
"subscriptionId": 123456,
"portalId": 123456,
"appId": 123456,
"occurredAt": 1708986598741,
"subscriptionType": "contact.creation",
"attemptNumber": 0,
"objectId": 2001,
"changeFlag": "CREATED",
"changeSource": "CRM_UI",
"sourceId": "userId:123456"
}
],
"contentType": "application/json"
},
"pathFragment": "",
"webhookUrls": {
"Webhook": "https://hooks.example.com/trigger/123456=="
},
"webhookApiKeys": {
"Webhook": [
"sample-api-key"
]
},
"invokeUrl": "https://hooks.example.com/trigger/123456==",
"executionId": "123456",
"customer": {
"id": "testCustomerId",
"name": "Test Customer",
"externalId": "testCustomerExternalId"
},
"instance": {
"id": "123456",
"name": "HubSpot - Webhook"
},
"user": {
"id": "testUserId",
"email": "testUserEmail@example.com",
"name": "Test User",
"externalId": "testUserExternalId"
},
"integration": {
"id": "123456",
"name": "HubSpot - Webhook",
"versionSequenceId": "testIntegrationVersionSequenceId"
},
"flow": {
"id": "123456==",
"name": "Webhook"
}
}
}

Data Sources

Object Selection

A list of HubSpot objects. | key: getObjectSelection | type: objectSelection

InputNotesExample
HubSpot Connection
Include Custom Objectsfalse
Objects to Select

The objects to include in the selection list.


Select Company

Select a company from the list of companies. | key: selectCompany | type: picklist

InputNotesExample
Connection

Select Contact

Select a contact from the list of contacts. | key: selectContact | type: picklist

InputNotesExample
Connection

Select Deal

Select a deal from the list of deals. | key: selectDeal | type: picklist

InputNotesExample
Connection

Select Engagement

Select an engagement from the list of engagements. | key: selectEngagement | type: picklist

InputNotesExample
Connection

Select Line Item

Select a line item from the list of line items. | key: selectLineItem | type: picklist

InputNotesExample
Connection

Select Product

Select a product from the list of products. | key: selectProduct | type: picklist

InputNotesExample
Connection

Select Property

Select a property from the list of properties. | key: selectProperty | type: picklist

InputNotesExample
Connection
Object Type

Provide a string value for the type of object

deal

Select Webhook

Select a webhook from the list of webhooks. | key: selectWebhook | type: picklist

InputNotesExample
Connection

Actions

Archive Association

Remove the associations between two provided objects | key: ArchiveAssociations

InputNotesExample
Type Of Association

Provide a value for the type of association to perform. You can get the set of available values for this input by making a step using the "List Association Types"

890435
From Id

Provide a value for the unique identifier of the first object

890435
From Object Type

The type of the "from" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

contact
Connection
Timeout

The maximum time a client will await a request

20000
To Id

Provide a value for the unique identifier of the second object

890435
To Object Type

The type of the "to" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

deal

{
"data": {}
}

Archive Batch Contacts

Archive a batch of contacts by ID | key: archiveBatchContacts

InputNotesExample
Contact Ids

A list of contact IDs.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Archive Batch Engagement

Archives a batch of selected engagements by their IDs. | key: archiveBatchEngagement

InputNotesExample
Engagement Ids

A list of engagement IDs.

Engagement Object

Select an engagement object.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Cancel Import

Cancels an active import. | key: cancelImport

InputNotesExample
Connection
Import Id

Provide the unique identifier of the import.

43203123
Timeout

The maximum time a client will await a request

20000

{
"data": {
"completedAt": "2024-02-07T05:02:32.700Z",
"requestedAt": "2024-02-07T05:02:32.700Z",
"startedAt": "2024-02-07T05:02:32.700Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"status": "PENDING"
}
}

Create Association

Create an association between the objects identified in the step | key: createAssociations

InputNotesExample
Type Of Association

Provide a value for the type of association to perform. You can get the set of available values for this input by making a step using the "List Association Types"

890435
From Id

Provide a value for the unique identifier of the first object

890435
From Object Type

The type of the "from" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

contact
Connection
Timeout

The maximum time a client will await a request

20000
To Id

Provide a value for the unique identifier of the second object

890435
To Object Type

The type of the "to" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

deal

{
"data": {
"completedAt": "2024-02-26T23:59:28.273Z",
"requestedAt": "2024-02-26T23:59:28.273Z",
"startedAt": "2024-02-26T23:59:28.273Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"results": [
{
"from": {
"id": "37295"
},
"to": {
"id": "37295"
},
"type": "contact_to_company"
}
],
"status": "PENDING"
}
}

Create Batch Contacts

Create a batch of contacts | key: createBatchContacts

InputNotesExample
Batch Contacts

An array of contact objects to create. See https://developers.hubspot.com/docs/api/crm/contacts for properties.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"completedAt": "2024-02-21T08:27:09.446Z",
"requestedAt": "2024-02-21T08:27:09.446Z",
"startedAt": "2024-02-21T08:27:09.446Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"results": [
{
"createdAt": "2024-02-21T08:27:09.446Z",
"archived": false,
"archivedAt": "2024-02-21T08:27:09.446Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.446Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.446Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.446Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-21T08:27:09.446Z"
}
],
"status": "PENDING"
}
}

Create Batch Engagement

Creates a batch of selected engagements. | key: createBatchEngagement

InputNotesExample
Batch Engagements

An array of engagements.

Engagement Object

Select an engagement object.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"status": "COMPLETE",
"results": [
{
"id": "654321",
"properties": {
"hs_body_preview": "Send Proposal",
"hs_body_preview_html": "<html>\n <head></head>\n <body>\n Send Proposal\n </body>\n</html>",
"hs_body_preview_is_truncated": "false",
"hs_createdate": "2024-02-14T02:09:49.695Z",
"hs_lastmodifieddate": "2024-02-14T02:09:49.695Z",
"hs_object_id": "654321",
"hs_object_source": "INTEGRATION",
"hs_object_source_id": "123456",
"hs_object_source_label": "INTEGRATION",
"hs_pipeline_stage": "dd5826e4-c976-4654-a527-b59ada512345",
"hs_task_body": "Send Proposal",
"hs_task_completion_count": "0",
"hs_task_family": "SALES",
"hs_task_for_object_type": "OWNER",
"hs_task_is_all_day": "false",
"hs_task_is_completed": "0",
"hs_task_is_completed_call": "0",
"hs_task_is_completed_email": "0",
"hs_task_is_completed_linked_in": "0",
"hs_task_is_completed_sequence": "0",
"hs_task_is_overdue": "true",
"hs_task_is_past_due_date": "true",
"hs_task_missed_due_date": "true",
"hs_task_missed_due_date_count": "1",
"hs_task_priority": "HIGH",
"hs_task_status": "WAITING",
"hs_task_subject": "Follow-up for Brian Buyer",
"hs_task_type": "CALL",
"hs_timestamp": "2019-10-30T03:30:17.883Z"
},
"createdAt": "2024-02-14T02:09:49.695Z",
"updatedAt": "2024-02-14T02:09:49.695Z",
"archived": false
}
],
"startedAt": "2024-02-14T02:09:49.666Z",
"completedAt": "2024-02-14T02:09:49.903Z"
}
}

Create Company

Create a new company | key: createCompany

InputNotesExample
City

Provide a string value for the city of the company

Atherton
Company Name

Provide a string value for the name of the company

Acme Inc.
Phone

Provide a value for the phone number of the company.

(800) 555-1515
Description

Provide the description of the object.

This is an example description.
Domain

Provide a string value for the domain of the company

www.example.com
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Industry

Provide a string value for the industry of the company

Software
State

Provide a string value for the state of the company

California
Timeout

The maximum time a client will await a request

20000

{
"data": {
"createdAt": "2024-02-27T00:06:42.321Z",
"archived": false,
"archivedAt": "2024-02-27T00:06:42.321Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.321Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.321Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.321Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:06:42.321Z"
}
}

Create Contact

Create a new contact | key: CreateContact

InputNotesExample
Company

Provide a string value for the company of the contact

Acme Inc.
Email

Provide a string value for the email of the contact. Getting contacts by email performs a search function and will return a successful output even when no results are found.

someone@example.com
First Name

Provide a string value for the first name of the contact

John
Last Name

Provide a string value for the last name of the contact

Doe
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Phone

Provide a value for the phone number.

(877) 929-0687
Timeout

The maximum time a client will await a request

20000
Website

Provide a string value for the website.

www.example.com

{
"data": {
"createdAt": "2024-02-27T00:20:24.825Z",
"archived": false,
"archivedAt": "2024-02-27T00:20:24.825Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.825Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.825Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.825Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:20:24.825Z"
}
}

Create Custom Object

Creates new custom object schema | key: createCustomObject

InputNotesExample
Associated Objects

Associations defined for this object type.

my_object_property
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Name

A unique name for this object. For internal use only.

my_object
Plural Label

The word for multiple objects. (There's no way to change this later.)

My object
Properties

Properties defined for this object type.

Required Properties

The names of properties that should be required when creating an object of this type.

my_object_property
Searchable Properties

Names of properties that will be indexed for this object type in by HubSpot's product search.

my_object_property
Secondary Display Properties

The names of secondary properties for this object. These will be displayed as secondary on the HubSpot record page for this object type.

my_object_property
Singular Label

The word for one object. (There's no way to change this later.)

My object
Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "123456",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"updatedAt": "2020-02-20T18:07:11.802Z",
"createdAt": "2020-02-20T18:07:11.802Z",
"name": "my_object_property",
"label": "My object property",
"type": "string",
"fieldType": "text",
"groupName": "my_object_information",
"displayOrder": -1,
"calculated": false,
"externalOptions": false,
"archived": false,
"hasUniqueValue": false
}
],
"associations": [
{
"id": "123",
"fromObjectTypeId": "2-123456",
"toObjectTypeId": "0-1",
"name": "my_object_to_contact"
}
],
"labels": {
"singular": "My object",
"plural": "My objects"
},
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property",
"metaType": "PORTAL_SPECIFIC",
"fullyQualifiedName": "p7878787_my_object\"",
"name": "my_object"
}
}

Create Deal

Create a new deal | key: createDeal

InputNotesExample
Amount

Provide a string value for the amount.

34,000
Close Date

Provide a date representing when the sale will close.

2019-12-07T16:50:06.678Z
Deal Name

Provide a string value for the name of the deal

My Example Deal
Deal Stage

Provide a value for the stage of the deal. Deal stages allow you to categorize and track the progress of the deals that you are working on.

presentationscheduled
Deal Type

Provide a string value for the type of deal. By default, categorize your deal as either a New Business or Existing Business. The picklist of values for this property is configurable through HubSpot

newbusiness
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Owner Id

Provide a string value for the owner of the resource

910901
Pipeline

Provide a string value for which pipeline to interact with.

default
Priority

Provide a string value for priority of the deal.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"createdAt": "2024-02-27T00:24:54.526Z",
"archived": false,
"archivedAt": "2024-02-27T00:24:54.526Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.526Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.526Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.526Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:24:54.526Z"
}
}

Create Engagement

Create a communication, email, call, meeting, note, postal mail or task engagement in HubSpot CRM. | key: createEngagement

InputNotesExample
Associations

To create and associate a task with existing records.

Engagement Object

Select an engagement object.

Connection
Properties

A properties object, attributes depend on the engagement type. For possible properties for each engagement type go to https://developers.hubspot.com/docs/api/crm/tasks.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "123456789",
"properties": {
"hs_body_preview": "Send Proposal",
"hs_body_preview_html": "<html>\n <head></head>\n <body>\n Send Proposal\n </body>\n</html>",
"hs_body_preview_is_truncated": "false",
"hs_createdate": "2024-02-12T21:27:23.876Z",
"hs_lastmodifieddate": "2024-02-12T21:27:23.876Z",
"hs_object_id": "123456789",
"hs_object_source": "INTEGRATION",
"hs_object_source_id": "654321",
"hs_object_source_label": "INTEGRATION",
"hs_task_body": "Send Proposal",
"hs_task_completion_count": "0",
"hs_task_family": "SALES",
"hs_task_for_object_type": "OWNER",
"hs_task_is_all_day": "false",
"hs_task_is_completed": "0",
"hs_task_is_completed_call": "0",
"hs_task_is_completed_email": "0",
"hs_task_is_completed_linked_in": "0",
"hs_task_is_completed_sequence": "0",
"hs_task_is_overdue": "true",
"hs_task_is_past_due_date": "true",
"hs_task_missed_due_date": "true",
"hs_task_missed_due_date_count": "1",
"hs_task_priority": "HIGH",
"hs_task_status": "WAITING",
"hs_task_subject": "Follow-up for Brian Buyer",
"hs_task_type": "CALL",
"hs_timestamp": "2024-01-30T03:30:17.883Z"
},
"createdAt": "2024-02-12T21:27:23.876Z",
"updatedAt": "2024-02-12T21:27:23.876Z",
"archived": false
}
}

Create Line Item

Create a new line item | key: createLineItem

InputNotesExample
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Name

Provide a string value for the name of the line item.

My Line Item
Price

Provide the price of the product.

80400
Product Id

Provide the unique identifier of the product.

804874
Quantity

Provide a string value for the quantity of product in the line item.

80
Recurring Billing Monthly Rate

Provide a string value for the quantity of product in the line item.

Recurring Billing Frequency

Provide the billing frequency of the product. Specify the integer of months in between a P and M in the following format: P{integer}M

P12M
Timeout

The maximum time a client will await a request

20000

{
"data": {
"createdAt": "2024-02-27T00:31:42.469Z",
"archived": false,
"archivedAt": "2024-02-27T00:31:42.469Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.469Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.469Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.469Z"
}
]
},
"id": "512",
"properties": {
"name": "1 year implementation consultation",
"price": "6000.00",
"quantity": "2",
"hs_product_id": "191902",
"recurringbillingfrequency": "monthly",
"hs_recurring_billing_period": "P24M"
},
"updatedAt": "2024-02-27T00:31:42.469Z"
}
}

Create Product

Create a new product | key: createProduct

InputNotesExample
Description

Provide the description of the object.

This is an example description.
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Price

Provide the price of the product.

80400
Product Name

Provide the name of the product.

myProduct
Recurring Billing Frequency

Provide the billing frequency of the product. Specify the integer of months in between a P and M in the following format: P{integer}M

P12M
Product SKU

Provide the SKU of the product.

804874
Timeout

The maximum time a client will await a request

20000
Unit Cost

Provide the unit cost of the product.

800

{
"data": {
"createdAt": "2024-02-27T00:35:05.442Z",
"archived": false,
"archivedAt": "2024-02-27T00:35:05.442Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.442Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.442Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.442Z"
}
]
},
"id": "512",
"properties": {
"name": "Implementation Service",
"price": "6000.00",
"hs_sku": "191902",
"description": "Onboarding service for data product",
"hs_cost_of_goods_sold": "600.00",
"hs_recurring_billing_period": "P12M"
},
"updatedAt": "2024-02-27T00:35:05.442Z"
}
}

Create Webhook

Create a webhook in HubSpot | key: createWebhook

InputNotesExample
Active

Determines if the subscription is active or paused. Defaults to false.

false
Event Type

Type of event to listen for. Can be one of create, delete, deletedForPrivacy, or propertyChange.

Connection
Property Name

The internal name of the property to monitor for changes. Only applies when eventType is propertyChange.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"createdAt": "2024-02-16T20:53:52.517Z",
"propertyName": "string",
"active": true,
"eventType": "contact.propertyChange",
"id": "string",
"updatedAt": "2024-02-16T20:53:52.517Z"
}
}

Delete all Instanced Webhooks

Delete all webhooks created by this instance in HubSpot | key: deleteAllWebhooks

InputNotesExample
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"message": "All webhooks deleted successfully"
}
}

Delete Company

Delete an existing company by Id | key: deleteCompany

InputNotesExample
Company Id

Provide a value for the unique identifier of the company.

097829
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Contact

Delete a contact by Id | key: deleteContact

InputNotesExample
Contact Id

Provide a string value for the unique identifier of the contact.

9989223
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Custom Object

Removes custom object schema | key: deleteCustomObject

InputNotesExample
Return Archived Results

Whether to return only results that have been archived.

false
Connection
Object Type

Provide a string value for the type of object

deal
Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "123456",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"updatedAt": "2020-02-20T18:07:11.802Z",
"createdAt": "2020-02-20T18:07:11.802Z",
"name": "my_object_property",
"label": "My object property",
"type": "string",
"fieldType": "text",
"groupName": "my_object_information",
"displayOrder": -1,
"calculated": false,
"externalOptions": false,
"archived": false,
"hasUniqueValue": false
}
],
"associations": [
{
"id": "123",
"fromObjectTypeId": "2-123456",
"toObjectTypeId": "0-1",
"name": "my_object_to_contact"
}
],
"labels": {
"singular": "My object",
"plural": "My objects"
},
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property",
"metaType": "PORTAL_SPECIFIC",
"fullyQualifiedName": "p7878787_my_object\"",
"name": "my_object"
}
}

Delete Deal

Delete a deal by its Id | key: deleteDeal

InputNotesExample
Deal Id

Provide the unique identifier of the deal

804874
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Engagement

Deletes an engagement by its ID. | key: deleteEngagement

InputNotesExample
Engagement Id

The unique identifier of the engagement. A taskId, meetingId, etc.

123456
Engagement Object

Select an engagement object.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Line Item

Delete an existing line item by Id | key: deleteLineItem

InputNotesExample
Connection
Line Item Id

Provide the unique identifier of the line item.

78349093
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Product

Delete a product by Id | key: deleteProduct

InputNotesExample
Connection
Product Id

Provide the unique identifier of the product.

804874
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Delete Webhook

Delete a webhook by ID in HubSpot | key: deleteWebhook

InputNotesExample
Connection
Subscription ID

The ID of the subscription to delete

123456789
Timeout

The maximum time a client will await a request

20000

{
"data": {}
}

Export CRM Data

Begins exporting CRM data for the portal as specified in the request body. | key: exportCRMData

InputNotesExample
Associated Object Type

The name or ID of an associated object to include in the export. If you include an associated object, the export will contain the associated record IDs of that object and the records' primary display property value.

name
Export Name

The name of the export.

My Export
Format

The format of the export file.

CSV
Connection
Language

The language of the export file.

List Id (Only and required for PublicExportListRequest)

The ILS List ID of the list to export.

123456
Object Properties

A list of the properties you want included in your export.

email
Object Type

The name or ID of the object you're exporting. For standard objects, you can use the object's name (e.g., CONTACT), but for custom objects, you must use the objectTypeId value, you can find this value in the response of the List Custom Objects action.

deal
Public CRM Search Request (Only for PublicExportViewRequest)

Indicates which data should be exported based on certain property values and search queries.

Schema Type

Schema type for the export.

VIEW
Timeout

The maximum time a client will await a request

20000

{
"data": {
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"id": "string"
}
}

Get an Import

Get a complete summary of an import record, including any updates. | key: getAnImport

InputNotesExample
Connection
Import Id

Provide the unique identifier of the import.

43203123
Timeout

The maximum time a client will await a request

20000

{
"data": {
"importTemplate": {
"templateType": "admin_defined",
"templateId": 0
},
"createdAt": "2024-02-07T05:02:32.691Z",
"metadata": {
"counters": {
"TOTAL_ROWS": 2,
"CREATED_OBJECTS": 1,
"UPDATED_OBJECTS": 1,
"UNIQUE_OBJECTS_WRITTEN": 2,
"PROPERTY_VALUES_EMITTED": 2
},
"fileIds": [
"3579849"
],
"objectLists": [
{
"listId": "3",
"objectType": "contacts"
}
]
},
"importRequestJson": {},
"importSource": "API",
"importName": "string",
"state": "DONE",
"id": "1471",
"optOutImport": false,
"updatedAt": "2024-02-07T05:02:32.692Z"
}
}

Get Batch Contacts

Read a batch of contacts by internal ID, or unique property values. | key: getBatchContacts

InputNotesExample
Return Archived Results

Whether to return only results that have been archived.

false
Contact Ids

A list of contact IDs.

Connection
Id Property

An ID property to search by

Property

A list of properties to read by.

Properties With History

A list of properties to read by.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"completedAt": "2024-02-21T08:27:09.454Z",
"requestedAt": "2024-02-21T08:27:09.454Z",
"startedAt": "2024-02-21T08:27:09.454Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"results": [
{
"createdAt": "2024-02-21T08:27:09.454Z",
"archived": false,
"archivedAt": "2024-02-21T08:27:09.454Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.454Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.454Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.454Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-21T08:27:09.454Z"
}
],
"status": "PENDING"
}
}

Get Company

Retrieve the information or metadata of a company by Id, domain, or name | key: getCompany

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Company Id

Provide a value for the unique identifier of the company.

097829
Company Name

Provide a string value for the name of the company

Acme Inc.
Domain

Provide a string value for the domain of the company

www.example.com
Connection
Timeout

The maximum time a client will await a request

20000

Get Contact

Get the information and metadata of a contact by Id or Email | key: getContact

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Email

Provide a string value for the email of the contact. Getting contacts by email performs a search function and will return a successful output even when no results are found.

someone@example.com
Contact Id

Provide a string value for the unique identifier of the contact.

9989223
Connection
Timeout

The maximum time a client will await a request

20000

Get Current User

Return information about the current session's user. | key: getCurrentUser

InputNotesExample
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": {
"portalId": 123456,
"timeZone": "US/Eastern",
"accountType": "DEVELOPER_TEST",
"currency": "USD",
"utcOffset": "-05:00",
"utcOffsetMilliseconds": -18000000,
"user_id": 456789,
"user": "example@mail.com"
}
}
}

Get Custom Object

Retrieves a specific custom object | key: getCustomObject

InputNotesExample
Connection
Object Type

Provide a string value for the type of object

deal
Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "123456",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"updatedAt": "2020-02-20T18:07:11.802Z",
"createdAt": "2020-02-20T18:07:11.802Z",
"name": "my_object_property",
"label": "My object property",
"type": "string",
"fieldType": "text",
"groupName": "my_object_information",
"displayOrder": -1,
"calculated": false,
"externalOptions": false,
"archived": false,
"hasUniqueValue": false
}
],
"associations": [
{
"id": "123",
"fromObjectTypeId": "2-123456",
"toObjectTypeId": "0-1",
"name": "my_object_to_contact"
}
],
"labels": {
"singular": "My object",
"plural": "My objects"
},
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property",
"metaType": "PORTAL_SPECIFIC",
"fullyQualifiedName": "p7878787_my_object\"",
"name": "my_object"
}
}

Get Deal

Retrieve information and metadata about a deal by its Id or name | key: getDealById

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Deal Id

Provide the unique identifier of the deal

804874
Deal Name

Provide a string value for the name of the deal

My Example Deal
Connection
Timeout

The maximum time a client will await a request

20000

Get Engagement

Get a communication, email, call, meeting, note, postal mail or task engagement object from HubSpot CRM. | key: getEngagement

InputNotesExample
Return Archived Results

Whether to return only results that have been archived.

false
Associations

List of object types to retrieve associated IDs for. If the specified association do not exist, it will be ignored.

contact
Engagement Id

The unique identifier of the engagement. A taskId, meetingId, etc.

123456
Engagement Object

Select an engagement object.

Connection
Id Property

The name of a property whose values are unique for this object type.

Properties To Return

Properties to be returned in the response. If the specified property is not present on the requested object, it will be ignored.

Property With History To Return

A property to be returned along with it's history of previous values. If the specified property is not present on the requested object, it will be ignored.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "12345",
"properties": {
"hs_createdate": "2024-02-12T01:42:51.758Z",
"hs_lastmodifieddate": "2024-02-12T01:42:51.950Z",
"hs_object_id": "12345",
"hs_task_body": "<div style=\"\" dir=\"auto\" data-top-level=\"true\"><br></div>",
"hs_timestamp": "2024-02-14T14:00:00Z"
},
"propertiesWithHistory": {
"hs_task_body": [
{
"value": "<div style=\"\" dir=\"auto\" data-top-level=\"true\"><br></div>",
"timestamp": "2024-02-12T01:42:51.758Z",
"sourceType": "CRM_UI",
"sourceId": "userId:12345",
"updatedByUserId": 12345
}
]
},
"createdAt": "2024-02-12T01:42:51.758Z",
"updatedAt": "2024-02-12T01:42:51.950Z",
"archived": false
}
}

Get Line Item

Retrieve the information and metadata of a line item by Id | key: getLineItem

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Connection
Line Item Id

Provide the unique identifier of the line item.

78349093
Name

Provide a string value for the name of the line item.

My Line Item
Timeout

The maximum time a client will await a request

20000

Get Product

Retrieve the information and metadata of a product by Id or name | key: getProduct

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Connection
Product Id

Provide the unique identifier of the product.

804874
Product Name

Provide the name of the product.

myProduct
Timeout

The maximum time a client will await a request

20000

Import CRM Data

Import CRM records and activities into your HubSpot account, such as contacts, companies, and notes. | key: importCRMData

InputNotesExample
Create Contact List From Import

An optional field to create a static list of the contacts from your import. To create a list from your file, use the value true.

false
Data CSV File

The CSV file to import, this should be binary data from a previous step. Key name should be the file name and the value should be the binary data.

key: 'contact-import-file.csv', value: 'binary data'
Date Format

The format for dates included in the file. By default, this is set to MONTH_DAY_YEAR, but you can also use DAY_MONTH_YEAR or YEAR_MONTH_DAY.

YEAR_MONTH_DAY
Files

An array that contains your import file information. For more information, see https://developers.hubspot.com/docs/api/crm/imports.

Connection
Import Operations

An optional field used to indicate whether the import should create and update, only create, or only update records for a certain object or activity. Include the objectTypeId for the object/activity and whether you want to UPSERT (create and update), CREATE, or UPDATE records. For objectTypeId's, check https://developers.hubspot.com/docs/api/crm/understanding-the-crm#object-type-id

Marketable Contact Import

Whether the contacts being imported are marketable. If not provided, the default value is true.

true
Name

The name of the import.

Contact Company import
Timeout

The maximum time a client will await a request

20000

{
"data": {
"importTemplate": {
"templateType": "admin_defined",
"templateId": 0
},
"createdAt": "2024-02-07T05:02:32.679Z",
"metadata": {
"counters": {
"TOTAL_ROWS": 2,
"CREATED_OBJECTS": 1,
"UPDATED_OBJECTS": 1,
"UNIQUE_OBJECTS_WRITTEN": 2,
"PROPERTY_VALUES_EMITTED": 2
},
"fileIds": [
"3579849"
],
"objectLists": [
{
"listId": "3",
"objectType": "contacts"
}
]
},
"importRequestJson": {},
"importSource": "API",
"importName": "string",
"state": "DONE",
"id": "1471",
"optOutImport": false,
"updatedAt": "2024-02-07T05:02:32.679Z"
}
}

List Active Imports

Returns a paged list of active imports for this account. | key: listActiveImports

InputNotesExample
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": [
{
"importTemplate": {
"templateType": "admin_defined",
"templateId": 0
},
"createdAt": "2024-02-07T05:02:32.668Z",
"metadata": {
"counters": {
"TOTAL_ROWS": 2,
"CREATED_OBJECTS": 1,
"UPDATED_OBJECTS": 1,
"UNIQUE_OBJECTS_WRITTEN": 2,
"PROPERTY_VALUES_EMITTED": 2
},
"fileIds": [
"3579849"
],
"objectLists": [
{
"listId": "3",
"objectType": "contacts"
}
]
},
"importRequestJson": {},
"importSource": "API",
"importName": "string",
"state": "DONE",
"id": "1471",
"optOutImport": false,
"updatedAt": "2024-02-07T05:02:32.668Z"
}
]
}

List Association Types

Retrieve a list of all association types available between two objects | key: listAssociationTypes

InputNotesExample
From Object Type

The type of the "from" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

contact
Connection
Timeout

The maximum time a client will await a request

20000
To Object Type

The type of the "to" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

deal

{
"data": {
"results": [
{
"name": "contact_to_company",
"id": "1"
}
]
}
}

List Companies

Retrieve a list of all companies | key: listCompanies

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Fetch All

Fetch all records.

false
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": 12345,
"properties": {
"createdate": "2021-09-14T@@:36:404Z",
"domain": null,
"hs_lastmodifieddate": "2021-09-14T@@:36:404Z",
"hs_object_id": 12345,
"name": "Example Company"
},
"pipeline": "default",
"createdAt": "2021-09-14T@@:36:404Z",
"updatedAt": "2021-09-14T@@:36:404Z",
"archived": false
}
],
"paging": {
"next": {
"after": "123456789",
"link": "https://api.hubapi.com/crm/v3/objects/products?limit=1&after=123456789"
}
}
}
}

List Contacts

Retrieve a list of all contacts | key: listContacts

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Fetch All

Fetch all records.

false
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": 12345,
"properties": {
"createdate": "2021-09-14T@@:36:404Z",
"email": "someone@example.com",
"firstname": "John",
"hs_lastmodifieddate": "2021-09-14T@@:36:404Z",
"lastname": "Doe",
"hs_object_id": 12345
},
"pipeline": "default",
"createdAt": "2021-09-14T@@:36:404Z",
"updatedAt": "2021-09-14T@@:36:404Z",
"archived": false
}
],
"paging": {
"next": {
"after": "123456789",
"link": "https://api.hubapi.com/crm/v3/objects/products?limit=1&after=123456789"
}
}
}
}

List Custom Objects

Retrieve all custom objects | key: listCustomObjects

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Return Archived Results

Whether to return only results that have been archived.

false
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": "123456",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"updatedAt": "2020-02-20T18:07:11.802Z",
"createdAt": "2020-02-20T18:07:11.802Z",
"name": "my_object_property",
"label": "My object property",
"type": "string",
"fieldType": "text",
"groupName": "my_object_information",
"displayOrder": -1,
"calculated": false,
"externalOptions": false,
"archived": false,
"hasUniqueValue": false
}
],
"associations": [
{
"id": "123",
"fromObjectTypeId": "2-123456",
"toObjectTypeId": "0-1",
"name": "my_object_to_contact"
}
],
"labels": {
"singular": "My object",
"plural": "My objects"
},
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property",
"metaType": "PORTAL_SPECIFIC",
"fullyQualifiedName": "p7878787_my_object\"",
"name": "my_object"
}
]
}
}

List Deals

Retrieve a list of all deals | key: listDeals

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Fetch All

Fetch all records.

false
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": 12345,
"properties": {
"amount": "600.00",
"closedate": "2021-09-14T@@:36:404Z",
"createdate": "2021-09-14T@@:36:404Z",
"dealname": "My Example Deal",
"dealstage": "presentationscheduled",
"hs_lastmodifieddate": "2021-09-14T@@:36:404Z",
"hs_object_id": 12345
},
"pipeline": "default",
"createdAt": "2021-09-14T@@:36:404Z",
"updatedAt": "2021-09-14T@@:36:404Z",
"archived": false
}
],
"paging": {
"next": {
"after": "123456789",
"link": "https://api.hubapi.com/crm/v3/objects/products?limit=1&after=123456789"
}
}
}
}

List Engagements

List engagement objects from HubSpot CRM, including communications, emails, calls, meetings, notes, postal mail, and tasks. | key: listEngagements

InputNotesExample
Engagement Object

Select an engagement object.

Connection
Properties To Return

Properties to be returned in the response. If the specified property is not present on the requested object, it will be ignored.

Timeout

The maximum time a client will await a request

20000

{
"data": [
{
"id": "47231018154",
"properties": {
"hs_createdate": "2024-02-12T01:42:51.758Z",
"hs_lastmodifieddate": "2024-02-12T01:42:51.950Z",
"hs_object_id": "47231018154"
},
"createdAt": "2024-02-12T01:42:51.758Z",
"updatedAt": "2024-02-12T01:42:51.950Z",
"archived": false
},
{
"id": "47231018317",
"properties": {
"hs_createdate": "2024-02-12T01:43:03.422Z",
"hs_lastmodifieddate": "2024-02-12T01:43:03.891Z",
"hs_object_id": "47231018317"
},
"createdAt": "2024-02-12T01:43:03.422Z",
"updatedAt": "2024-02-12T01:43:03.891Z",
"archived": false
}
]
}

List Line Items

Retrieve a list of all line items | key: listLineItems

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Fetch All

Fetch all records.

false
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": 12345,
"properties": {
"amount": "600.00",
"createdate": "2021-09-14T@@:36:404Z",
"hs_lastmodifieddate": "2021-09-14T@@:36:404Z",
"hs_object_id": 12345,
"hs_product_id": 12345,
"quantity": null
}
}
],
"paging": {
"next": {
"after": "123456789",
"link": "https://api.hubapi.com/crm/v3/objects/products?limit=1&after=123456789"
}
}
}
}

List Products

Retrieve a list of all products | key: listProducts

InputNotesExample
Additional Properties To Return

For each item, provide a property you would like to be returned in the response.

phone
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Return Archived Results

Whether to return only results that have been archived.

false
Associations List

For each item, provide an object type to retrieve the associated Ids for.

Contacts
Fetch All

Fetch all records.

false
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"id": 12345,
"properties": {
"createdate": "2021-09-14T@@:36:404Z",
"hs_lastmodifieddate": "2021-09-14T@@:36:404Z",
"hs_object_id": 12345,
"name": "Example Product",
"price": "6000.00"
}
}
],
"paging": {
"next": {
"after": "123456789",
"link": "https://api.hubapi.com/crm/v3/objects/products?limit=1&after=123456789"
}
}
}
}

List Properties

Retrieve a list of all configured object properties. | key: listProperties

InputNotesExample
Connection
Object Type

Provide a string value for the type of object

deal
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"createdUserId": "string",
"hidden": false,
"modificationMetadata": {
"readOnlyOptions": true,
"readOnlyValue": true,
"readOnlyDefinition": true,
"archivable": true
},
"displayOrder": 2,
"description": "string",
"showCurrencySymbol": true,
"label": "My Contact Property",
"type": "enumeration",
"hubspotDefined": true,
"formField": true,
"createdAt": "2024-02-27T00:33:18.016Z",
"archivedAt": "2024-02-27T00:33:18.016Z",
"archived": true,
"groupName": "contactinformation",
"referencedObjectType": "string",
"name": "my_contact_property",
"options": [
{
"hidden": false,
"displayOrder": 1,
"description": "Choice number one",
"label": "Option A",
"value": "A"
}
],
"calculationFormula": "string",
"hasUniqueValue": false,
"fieldType": "select",
"updatedUserId": "string",
"calculated": true,
"externalOptions": true,
"updatedAt": "2024-02-27T00:33:18.016Z"
}
]
}
}

List Webhooks

List all webhooks for a server | key: listWebhooks

InputNotesExample
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"results": [
{
"createdAt": "2024-02-16T20:53:52.503Z",
"propertyName": "string",
"active": true,
"eventType": "contact.propertyChange",
"id": "string",
"updatedAt": "2024-02-16T20:53:52.503Z"
}
]
}
}

Raw Request

Send raw HTTP request to HubSpot | key: rawRequest

InputNotesExample
Connection
Data

The HTTP body payload to send to the URL.

{"exampleKey": "Example Data"}
File Data

File Data to be sent as a multipart form upload.

[{key: "example.txt", value: "My File Contents"}]
File Data File Names

File names to apply to the file data inputs. Keys must match the file data keys above.

Form Data

The Form Data to be sent as a multipart form upload.

[{"key": "Example Key", "value": new Buffer("Hello World")}]
Header

A list of headers to send with the request.

User-Agent: curl/7.64.1
Max Retry Count

The maximum number of retries to attempt. Specify 0 for no retries.

0
Method

The HTTP method to use.

Query Parameter

A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.

Response Type

The type of data you expect in the response. You can request json, text, or binary data.

json
Retry On All Errors

If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.

false
Retry Delay (ms)

The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled.

0
Timeout

The maximum time that a client will await a response to its request

2000
URL

Input the path only (/crm/v3/objects/deals), The base URL is already included (https://api.hubapi.com). For example, to connect to https://api.hubapi.com/crm/v3/objects/deals, only /crm/v3/objects/deals is entered in this field.

/crm/v3/objects/deals
Use Exponential Backoff

Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored.

false

This action allows you to make requests to any HubSpot API endpoint. This is especially helpful for search endpoints, where objects may have custom properties that are unique to your customers.

The data that you send to HubSpot can be dynamically generated in a code step. Then, you can pass the code step's results as an input reference to the Data input. For example, if you are using HubSpot's search API to search for HubSpot "deals" that have the name "Sample Deal" and are valued less than 100 dollars, you can create a code step that reads like this:

module.exports = async ({ logger, configVars }, stepResults) => {
const data = {
filterGroups: [
{
filters: [
{
propertyName: "dealname",
operator: "EQ",
value: "Sample Deal",
},
{
propertyName: "amount",
operator: "LT",
value: "100",
},
],
},
],
properties: [
"hs_object_id",
"createdate",
"hubspot_owner_id",
"dealstage",
"amount",
"dealname",
"closedate",
"days_to_close",
"hs_analytics_source",
"hs_analytics_source_data_1",
"hs_analytics_source_data_2",
"hs_campaign",
"hs_closed_amount",
"hs_lastmodifieddate",
"dealtype",
"description",
],
};

return { data };
};

On the raw request step, enter /crm/v3/objects/deals/search as the URL input, POST as the Method, and reference the code step's results as the Data input.


Read Association

Get the Ids of the objects associated with those specified in the step | key: readAssociations

InputNotesExample
From Object Type

The type of the "from" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

contact
Connection
Timeout

The maximum time a client will await a request

20000
To Id

Provide a value for the unique identifier of the second object

890435
To Object Type

The type of the "to" object. Choose from "Contacts", "Companies", "Deals", "Tickets", "Calls", "Quotes", "Line_items", "Meetings", "Products", "Feedback_submissions", or a custom object you have defined.

deal

{
"data": {
"completedAt": "2024-02-26T23:59:28.283Z",
"requestedAt": "2024-02-26T23:59:28.283Z",
"startedAt": "2024-02-26T23:59:28.283Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"results": [
{
"from": {
"id": "37295"
},
"paging": {
"next": {
"link": "string",
"after": "string"
},
"prev": {
"before": "string",
"link": "string"
}
},
"to": [
{
"id": "172859",
"type": "contact_to_company"
}
]
}
],
"status": "PENDING"
}
}

Use the search endpoints to filter, sort, and search objects, records, and engagements across your CRM. | key: search

InputNotesExample
Fetch All

Turn this ON to get more than 200 results. Note that this can be a large amount of data.

false
Connection
Object Type

The type of custom object to search for. Required for the Custom objects search endpoint.

deal
Search Endpoint

The endpoint to search for objects or engagements. For Custom objects don't forget to fill the Object Type input.

Search Limit

The number of records to return. The maximum value is 200.

10
Search Properties

Include properties such as filters and sorts, or specify the properties to be returned. If empty, only the default properties will be returned. For more information, see https://developers.hubspot.com/docs/api/crm/search.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"total": 2,
"results": [
{
"id": "651",
"properties": {
"createdate": "2023-12-22T16:37:23.758Z",
"email": "example@email.com",
"firstname": "John",
"hs_object_id": "651",
"lastmodifieddate": "2024-02-25T19:39:45.324Z",
"lastname": "Doe"
},
"createdAt": "2023-12-22T16:37:23.758Z",
"updatedAt": "2024-02-25T19:39:45.324Z",
"archived": false
}
],
"paging": {
"next": {
"after": "1"
}
}
}
}

Search Deals

Returns a list of deals that match the given properties | key: searchDeals

InputNotesExample
Start After

Specify the pagination token that's returned by a previous request to retrieve the next page of results

lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E
Connection
Limit

Provide a number for the maximum amount of items that will be returned by the search.

100
Operator

Provide a string value for the operator used to search on.

Property Name

Provide a string value for the property you would like to search on. Please ensure the spelling and capitalization are correct for the property you want to use.

dealname
Timeout

The maximum time a client will await a request

20000
Value

Provide a string value corresponding to the given property name

myDeal

{
"data": {
"total": 0,
"paging": {
"next": {
"link": "?after=NTI1Cg%3D%3D",
"after": "NTI1Cg%3D%3D"
}
},
"results": [
{
"createdAt": "2024-02-27T00:24:54.571Z",
"archived": false,
"archivedAt": "2024-02-27T00:24:54.571Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.571Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.571Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.571Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:24:54.571Z"
}
]
}
}

Update Batch Contacts

Update a batch of contacts | key: updateBatchContacts

InputNotesExample
Batch Contacts

An array of contact objects to update. See https://developers.hubspot.com/docs/api/crm/contacts for properties.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"completedAt": "2024-02-21T08:27:09.462Z",
"requestedAt": "2024-02-21T08:27:09.462Z",
"startedAt": "2024-02-21T08:27:09.462Z",
"links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"results": [
{
"createdAt": "2024-02-21T08:27:09.462Z",
"archived": false,
"archivedAt": "2024-02-21T08:27:09.462Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.462Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.462Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-21T08:27:09.462Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-21T08:27:09.462Z"
}
],
"status": "PENDING"
}
}

Update Batch Engagement

Updates a batch of selected engagements. | key: updateBatchEngagement

InputNotesExample
Batch Engagements

An array of engagement objects to update. Each engagement object must contain the required properties for the specified engagement type. See https://developers.hubspot.com/docs/api/crm/tasks for more information.

Engagement Object

Select an engagement object.

Connection
Timeout

The maximum time a client will await a request

20000

{
"data": {
"status": "COMPLETE",
"results": [
{
"id": "12345678",
"properties": {
"hs_body_preview": "Updated",
"hs_body_preview_html": "<html>\n <head></head>\n <body>\n Updated\n </body>\n</html>",
"hs_body_preview_is_truncated": "false",
"hs_createdate": "2024-02-14T02:31:49.230Z",
"hs_lastmodifieddate": "2024-02-14T02:31:49.651Z",
"hs_object_id": "12345678",
"hs_pipeline_stage": "dd5826e4-c976-4654-a527-b59ada12345",
"hs_task_body": "Updated"
},
"createdAt": "2024-02-14T02:31:49.230Z",
"updatedAt": "2024-02-14T02:31:49.651Z",
"archived": false
}
],
"startedAt": "2024-02-14T02:31:49.629Z",
"completedAt": "2024-02-14T02:31:49.703Z"
}
}

Update Company

Update the information and metadata of an existing company | key: updateCompany

InputNotesExample
City

Provide a string value for the city of the company

Atherton
Company Id

Provide a value for the unique identifier of the company.

097829
Phone

Provide a value for the phone number of the company.

(800) 555-1515
Description

Provide the description of the object.

This is an example description.
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Industry

Provide a string value for the industry of the company

Software
State

Provide a string value for the state of the company

California
Timeout

The maximum time a client will await a request

20000
Company Name

Provide a string value for the name of the company

Acme Inc.
Domain

Provide a string value for the domain of the company

www.example.com

{
"data": {
"createdAt": "2024-02-27T00:06:42.336Z",
"archived": false,
"archivedAt": "2024-02-27T00:06:42.336Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.336Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.336Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:06:42.336Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:06:42.336Z"
}
}

Update Contact

Update the information and metadata of an existing contact | key: updateContact

InputNotesExample
Contact Id

Provide a string value for the unique identifier of the contact.

9989223
Company

Provide a string value for the company of the contact

Acme Inc.
Email

Provide a string value for the email of the contact

someone@example.com
First Name

Provide a string value for the first name of the contact

John
Last Name

Provide a string value for the last name of the contact

Doe
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Timeout

The maximum time a client will await a request

20000
Phone

Provide a value for the phone number of the contact

(877) 929-0687
Website

Provide a string value for the website of the contact

www.example.com

{
"data": {
"createdAt": "2024-02-27T00:20:24.840Z",
"archived": false,
"archivedAt": "2024-02-27T00:20:24.840Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.840Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.840Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:20:24.840Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:20:24.840Z"
}
}

Update Custom Object

Updates an object's schema | key: updateCustomObject

InputNotesExample
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Fully qualified name or object type ID of your schema.

Provide a string value for the type of object

deal
Plural Label

The word for multiple objects. (There's no way to change this later.)

My object
Required Properties

The names of properties that should be required when creating an object of this type.

my_object_property
Searchable Properties

Names of properties that will be indexed for this object type in by HubSpot's product search.

my_object_property
Singular Label

The word for one object. (There's no way to change this later.)

My object
Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "123456",
"createdAt": "2020-02-20T18:07:11.390Z",
"updatedAt": "2020-02-20T18:09:07.555Z",
"properties": [
{
"updatedAt": "2020-02-20T18:07:11.802Z",
"createdAt": "2020-02-20T18:07:11.802Z",
"name": "my_object_property",
"label": "My object property",
"type": "string",
"fieldType": "text",
"groupName": "my_object_information",
"displayOrder": -1,
"calculated": false,
"externalOptions": false,
"archived": false,
"hasUniqueValue": false
}
],
"associations": [
{
"id": "123",
"fromObjectTypeId": "2-123456",
"toObjectTypeId": "0-1",
"name": "my_object_to_contact"
}
],
"labels": {
"singular": "My object",
"plural": "My objects"
},
"requiredProperties": [
"my_object_property"
],
"searchableProperties": [
"my_object_property"
],
"primaryDisplayProperty": "my_object_property",
"metaType": "PORTAL_SPECIFIC",
"fullyQualifiedName": "p7878787_my_object\"",
"name": "my_object"
}
}

Update Deal

Update the information or metadata of an existing deal | key: updateDeal

InputNotesExample
Amount

Provide a string value for the amount.

34,000
Close Date

Provide a date representing when the sale will close.

2019-12-07T16:50:06.678Z
Deal Id

Provide the unique identifier of the deal

804874
Deal Type

Provide a string value for the type of deal. By default, categorize your deal as either a New Business or Existing Business. The picklist of values for this property is configurable through HubSpot

newbusiness
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Owner Id

Provide a string value for the owner of the resource

910901
Priority

Provide a string value for priority of the deal.

Timeout

The maximum time a client will await a request

20000
Deal Name

Provide a string value for the name of the deal

My Example Deal
Deal Stage

Provide a value for the stage of the deal. Deal stages allow you to categorize and track the progress of the deals that you are working on.

presentationscheduled
Pipeline

Provide a string value for which pipeline to interact with.

default

{
"data": {
"createdAt": "2024-02-27T00:24:54.543Z",
"archived": false,
"archivedAt": "2024-02-27T00:24:54.543Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.543Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.543Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:24:54.543Z"
}
]
},
"id": "512",
"properties": {
"property_date": "1572480000000",
"property_radio": "option_1",
"property_number": "17",
"property_string": "value",
"property_checkbox": "false",
"property_dropdown": "choice_b",
"property_multiple_checkboxes": "chocolate;strawberry"
},
"updatedAt": "2024-02-27T00:24:54.543Z"
}
}

Update Engagement

Update a communication, email, call, meeting, note, postal mail or task engagement in HubSpot CRM. | key: updateEngagement

InputNotesExample
Engagement Id

The unique identifier of the engagement. A taskId, meetingId, etc.

123456
Engagement Object

Select an engagement object.

Connection
Id Property

The name of a property whose values are unique for this object type.

Properties

A properties object to update, attributes depend on the engagement type. For possible properties for each engagement type go to https://developers.hubspot.com/docs/api/crm/tasks.

Timeout

The maximum time a client will await a request

20000

{
"data": {
"id": "654321",
"properties": {
"hs_body_preview": "changed",
"hs_body_preview_html": "<html>\n <head></head>\n <body>\n changed\n </body>\n</html>",
"hs_body_preview_is_truncated": "false",
"hs_createdate": "2024-02-12T22:04:01.144Z",
"hs_lastmodifieddate": "2024-02-12T22:04:01.871Z",
"hs_object_id": "654321",
"hs_task_body": "changed"
},
"createdAt": "2024-02-12T22:04:01.144Z",
"updatedAt": "2024-02-12T22:04:01.871Z",
"archived": false
}
}

Update Line Item

Update an the information and metadata of an existing line item | key: updateLineItem

InputNotesExample
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Line Item Id

Provide the unique identifier of the line item.

78349093
Quantity

Provide a string value for the quantity of product in the line item.

80
Recurring Billing Monthly Rate

Provide a string value for the quantity of product in the line item.

Recurring Billing Frequency

Provide the billing frequency of the product. Specify the integer of months in between a P and M in the following format: P{integer}M

P12M
Timeout

The maximum time a client will await a request

20000
Name

Provide a string value for the name of the line item.

My line Item
Price

Provide the price of the product.

80400
Product Id

Provide the unique identifier of the product.

804874

{
"data": {
"createdAt": "2024-02-27T00:31:42.485Z",
"archived": false,
"archivedAt": "2024-02-27T00:31:42.485Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.485Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.485Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:31:42.485Z"
}
]
},
"id": "512",
"properties": {
"name": "1 year implementation consultation",
"price": "6000.00",
"quantity": "2",
"hs_product_id": "191902",
"recurringbillingfrequency": "monthly",
"hs_recurring_billing_period": "P24M"
},
"updatedAt": "2024-02-27T00:31:42.485Z"
}
}

Update Product

Update the information and metadata of an existing product | key: updateProduct

InputNotesExample
Description

Provide the description of the object.

This is an example description.
Dynamic Fields

A field for dynamic inputs that can be configured at deploy time with the use of a key value config variable.

Values

The names of the fields and their values to use when creating/updating a record.

name:My Example Account,phone:5551234567
Connection
Product Id

Provide the unique identifier of the product.

804874
Recurring Billing Frequency

Provide the billing frequency of the product. Specify the integer of months in between a P and M in the following format: P{integer}M

P12M
Timeout

The maximum time a client will await a request

20000
Unit Cost

Provide the unit cost of the product.

800
Price

Provide the price of the product.

80400
Product Name

Provide the name of the product.

myProduct
Product SKU

Provide the SKU of the product.

804874

{
"data": {
"createdAt": "2024-02-27T00:35:05.457Z",
"archived": false,
"archivedAt": "2024-02-27T00:35:05.457Z",
"propertiesWithHistory": {
"additionalProp1": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.457Z"
}
],
"additionalProp2": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.457Z"
}
],
"additionalProp3": [
{
"sourceId": "string",
"sourceType": "string",
"sourceLabel": "string",
"updatedByUserId": 0,
"value": "string",
"timestamp": "2024-02-27T00:35:05.457Z"
}
]
},
"id": "512",
"properties": {
"name": "Implementation Service",
"price": "6000.00",
"hs_sku": "191902",
"description": "Onboarding service for data product",
"hs_cost_of_goods_sold": "600.00",
"hs_recurring_billing_period": "P12M"
},
"updatedAt": "2024-02-27T00:35:05.457Z"
}
}

Validate Connection

Returns a boolean value that specifies whether the provided Connection is valid | key: validateConnection

InputNotesExample
Connection
Timeout

The maximum time a client will await a request

20000

{
"data": true
}

Changelog

2025-10-17

Enhanced webhook lifecycle management with improved event type subscription handling and automated cleanup.

2025-09-18

Improved OAuth trigger documentation and reorganized connection documentation for better clarity.

2025-05-14

Added inline data sources for companies, contacts, deals, engagements, line items, products, properties, and webhooks to enhance data selection capabilities.