HubSpot

HubSpot's CRM platform contains the marketing, sales, service, operations, and website-building software you need to grow your business.

Go to site
Explore
/
Apps
/
HubSpot

HubSpot API Integrations

Build and run workflows using the HubSpot API. Use 1000s of source-available triggers and actions across 2,000+ apps. Or write custom code to integrate any app or API in seconds.

Overview

The HubSpot API enables developers to integrate into HubSpots CRM, CMS, Conversations, and other features. It allows for automated management of contacts, companies, deals, and marketing campaigns, enabling custom workflows, data synchronization, and task automation. This streamlines operations and boosts customer engagement, with real-time updates for rapid response to market changes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    hubspot: {
      type: "app",
      app: "hubspot",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.hubapi.com/integrations/v1/me`,
      headers: {
        Authorization: `Bearer ${this.hubspot.$auth.oauth_access_token}`,
      },
    })
  },
})

Choose an API to Connect with HubSpot API

1
-
24
of
2,000+
apps by most popular

HTTP / Webhook
HTTP / Webhook
Get a unique URL where you can send HTTP or webhook requests
Node
Node
Anything you can do with Node.js, you can do in a Pipedream workflow. This includes using most of npm's 400,000+ packages.
Python
Python
Anything you can do in Python can be done in a Pipedream Workflow. This includes using any of the 350,000+ PyPi packages available in your Python powered workflows.
OpenAI (ChatGPT)
OpenAI (ChatGPT)
OpenAI is an AI research and deployment company with the mission to ensure that artificial general intelligence benefits all of humanity. They are the makers of popular models like ChatGPT, DALL-E, and Whisper.
Salesforce (REST API)
Salesforce (REST API)
Web services API for interacting with Salesforce
HubSpot
HubSpot
HubSpot's CRM platform contains the marketing, sales, service, operations, and website-building software you need to grow your business.
Zoho CRM
Zoho CRM
Zoho CRM is an online Sales CRM software that manages your sales, marketing, and support in one CRM platform.
Stripe
Stripe
Stripe powers online and in-person payment processing and financial solutions for businesses of all sizes.
Shopify Developer App
Shopify Developer App
Shopify is a user-friendly e-commerce platform that helps small businesses build an online store and sell online through one streamlined dashboard.
WooCommerce
WooCommerce
WooCommerce is the open-source ecommerce platform for WordPress.
Snowflake
Snowflake
A data warehouse built for the cloud
MongoDB
MongoDB
MongoDB is an open source NoSQL database management program.
Supabase
Supabase
Supabase is an open source Firebase alternative.
MySQL
MySQL
MySQL is an open-source relational database management system.
PostgreSQL
PostgreSQL
PostgreSQL is a free and open-source relational database management system emphasizing extensibility and SQL compliance.
AWS
AWS
Amazon Web Services (AWS) offers reliable, scalable, and inexpensive cloud computing services.
Twilio SendGrid
Twilio SendGrid
Send marketing and transactional email through the Twilio SendGrid platform with the Email API, proprietary mail transfer agent, and infrastructure for scalable delivery.
Amazon SES
Amazon SES
Amazon SES is a cloud-based email service provider that can integrate into any application for high volume email automation
Klaviyo
Klaviyo
Email Marketing and SMS Marketing Platform
Zendesk
Zendesk
Zendesk is award-winning customer service software trusted by 200K+ customers. Make customers happy via text, mobile, phone, email, live chat, social media.
ServiceNow
ServiceNow
The smarter way to workflow
Notion
Notion
Notion is a new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.
Slack
Slack
Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
Microsoft Teams
Microsoft Teams
Microsoft Teams has communities, events, chats, channels, meetings, storage, tasks, and calendars in one place.

Example Use Cases

  • Lead Scoring and Segmentation: Enhance leads automatically by pulling in enrichment data from external sources and categorizing them in HubSpot. Use customer interaction data from social media or support platforms to adjust lead scores and segment leads into appropriate marketing campaigns within HubSpot.

  • Automated Ticketing and Support: Create a workflow where new support queries on HubSpot trigger the creation of tickets in a tool like Zendesk. The workflow can also update the customer record in HubSpot with the ticket information, ensuring the sales team has visibility into customer issues.

  • Syncing Contacts with Email Platforms: Set up a bi-directional sync between HubSpot and email marketing platforms like Mailchimp. When a contact is updated in HubSpot, it triggers an update in Mailchimp and vice versa. This keeps mailing lists current and enables targeted campaign efforts based on the most relevant data.

Getting Started

You can install the Pipedream HubSpot app in the Accounts section of your account, or directly in a workflow.

From Accounts

  1. Visit https://pipedream.com/accounts.
  2. Click on the Connect An App button in the top-right.
  3. Search for "HubSpot" among the list of apps, and select it.
  4. You will be prompted to sign in to HubSpot and select the account you'd like to connect.
  5. Finally, HubSpot will ask to give Pipedream access to your account. Click "Connect app" to proceed.

A screenshot of a user interface for adding a contact to a HubSpot account, with a prominent red arrow pointing to a dropdown menu titled "Select a HubSpot account...".

  1. That's it! You can now use this HubSpot account to trigger a workflow, or link it to any code step.

Within a workflow

  1. Create a new workflow.
  2. Search for "HubSpot" in the text field when selecting a trigger.
  3. Select the one of the triggers that appear, based on your use case.
  4. Click the Connect Account button near the top of the trigger. This will prompt you to select any existing HubSpot accounts you've previously authenticated with Pipedream, or you can select a New account. Clicking New opens a new window asking you to allow Pipedream access to your HubSpot account.

A screenshot of a user interface for adding a contact to a HubSpot account, with a prominent red arrow pointing to a dropdown menu titled "Select a HubSpot account...".

  1. That's it! You can now connect to the HubSpot API using any of the HubSpot triggers within a Pipedream workflow.
Create Issue with GitHub API on New Deals from Hubspot API
HubSpot + GitHub
 
Try it
Create issue with GitLab API on New Deals from HubSpot API
HubSpot + GitLab
 
Try it
Create Document with Firebase Admin SDK API on New Events from HubSpot API
HubSpot + Firebase Admin SDK
 
Try it
Create Associations with HubSpot API on New or Modified Folders from Google Drive API
Google Drive + HubSpot
 
Try it
Get Company with HubSpot API on Updated Deal from Pipedrive API
Pipedrive + HubSpot
 
Try it
Company Updated from the HubSpot API

Emit new event each time a company is updated.

 
Try it
Contact Updated from the HubSpot API

Emit new event each time a contact is updated.

 
Try it
Deleted Blog Posts from the HubSpot API

Emit new event for each deleted blog post.

 
Try it
Line Item Updated from the HubSpot API

Emit new event each time a line item is updated.

 
Try it
New Blog Posts from the HubSpot API

Emit new event for each new blog post.

 
Try it
Add Contact to List with the HubSpot API

Adds a contact to a specific static list. See the documentation

 
Try it
Batch Create or Update Contact with the HubSpot API

Create or update a batch of contacts by its ID. See the documentation

 
Try it
Create Associations with the HubSpot API

Create associations between objects. See the documentation

 
Try it
Create Company with the HubSpot API

Create a company in Hubspot. See the documentation

 
Try it
Create Contact with the HubSpot API

Create a contact in Hubspot. See the documentation

 
Try it

Troubleshooting

By default, a successful HubSpot API request will return a 200 status code alongside the corresponding data payload.

Below are a list of common errors from HubSpots API by HTTP status code.

401 Unauthorized

Returned when the authentication provided is invalid. See our Authentication Overview for details on authenticating API requests.

403 Forbidden

Returned when the authentication provided does not have the proper permissions to access the specific URL. For example, an OAuth token with only content access would receive a 403 error when trying to access the Deals API, which requires contacts access. If your API key or private app has the necessary permissions and you're still encountering this error, please contact HubSpot support for assistance.

429 Too Many Requests

Returned when your account or app exceeds its API rate limits. For suggestions on how to work within those limits, click here.

477 Migration in Progress

Returned when a HubSpot account is in the midst of migration between data hosting locations. In this event, HubSpot provides a Retry-After response header indicating the time in seconds to wait before attempting your request again, typically up to 24 hours.

502/504 Timeouts

Returned when HubSpot's processing limits are reached, which are in place to prevent performance degradation due to excessive requests from a single client. If you encounter these timeouts, pause your requests briefly before retrying.

503 Service Temporarily Unavailable

Returned when HubSpot is temporarily unavailable. Upon receiving this response, take a short break before resuming your requests.

521 Web Server Is Down

Returned when HubSpot's server is down, usually as a temporary issue. If this occurs, pause your requests momentarily, then attempt to reconnect.

522 Connection Timed Out

Returned when the connection between HubSpot and your application times out. Contact HubSpot support if you encounter this error.

523 Origin Is Unreachable

Returned when HubSpot cannot reach your application. If this happens, pause your requests briefly before trying again.

524 Timeout

Returned when a response is not received within 100 seconds, possibly due to HubSpot's server being overloaded. Pause your requests for a short period, then retry.

525/526 SSL Issues

Returned when there's an issue with the SSL certificate or if the SSL handshake fails. In such cases, reach out to HubSpot support for assistance.

Authentication

HubSpot uses OAuth authentication. When you connect your HubSpot account, Pipedream will open a popup window where you can sign into HubSpot and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any HubSpot API.

Pipedream requests the following authorization scopes when you connect your account:

business-intelligencecrm.lists.readcrm.lists.writecrm.objects.companies.readcrm.objects.companies.writecrm.objects.contacts.readcrm.objects.contacts.writecrm.objects.deals.readcrm.objects.deals.writecrm.objects.quotes.writecrm.objects.owners.readcrm.schemas.companies.readcrm.schemas.companies.writecrm.schemas.contacts.readcrm.schemas.contacts.writecrm.schemas.deals.readcrm.schemas.deals.writeconversations.readcrm.importfilesformsforms-uploaded-filesintegration-syncoauthtimeline
OAuth Request Configurations:
  1. authorization
    GEThttps://app.hubspot.com/oauth/authorize?client_id={{oauth.client_id}}&redirect_uri={{oauth.redirect_uri}}&state={{oauth.state}}&response_type=code&scope={{oauth.space_separated_scopes}}&optional_scope=automation content conversations.visitor_identification.tokens.create cms.source_code.read_write e-commerce hubdb sales-email-read social tickets transactional-email crm.objects.custom.read crm.objects.custom.write crm.schemas.custom.read crm.schemas.custom.write
  2. accessToken
    POSThttps://api.hubapi.com/oauth/v1/tokencontent-type: application/x-www-form-urlencodedaccept: application/json
    client_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&redirect_uri={{oauth.redirect_uri}}&grant_type=authorization_code&code={{oauth.code}}
  3. refreshToken
    POSThttps://api.hubapi.com/oauth/v1/tokencontent-type: application/x-www-form-urlencodedaccept: application/json
    client_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&grant_type=refresh_token&refresh_token={{oauth.refresh_token}}