Get started free
All integrations

HubSpot integration

CRM platform API for managing contacts, companies, deals, and marketing automation. Create and manage customer relationships, track sales pipelines, associate objects, search with advanced filters, and access property schemas. Perfect for building CRM integrations, sales automation tools, marketing platforms, and customer data management systems.

59 toolsOAuthAPI docs

Common HubSpot use cases

  • Clean test data
  • Call logging
  • Communication history
  • Log meetings
  • Email tracking
  • Form management
  • Lead processing
  • Task management
  • Bulk deal import
  • Form submissions

What you can do with HubSpot

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Contact, 10 operations

  • POSTbatch_create_contacts

    Creates multiple contact records in a single API call for bulk imports.

  • POSTbatch_read_contacts

    Retrieves multiple contacts by ID or email in a single efficient request.

  • POSTbatch_update_contacts

    Updates multiple contact records in a single API call for bulk modifications.

  • POSTbatch_upsert_contacts

    Creates new contacts or updates existing ones based on email or custom unique property.

  • POSTcreate_contact

    Creates a new contact record in HubSpot CRM with specified properties. Supports deduplication by email and allows setting any standard or custom contact properties during creation.

  • DELETEdelete_contact

    Permanently removes a contact from HubSpot CRM by their unique identifier. Deletes the contact record and associated data, supporting GDPR compliance and data cleanup workflows.

  • GETget_contact

    Retrieves detailed information for a specific CRM contact by their unique identifier. Returns contact properties, associations, and metadata for individual contact lookups and detail views.

  • GETlist_contacts

    Retrieves a paginated list of CRM contacts with customizable property selection. Supports cursor-based pagination for efficiently iterating through large contact databases with specific field filtering.

  • POSTsearch_contacts

    Searches contacts using powerful filter groups with multiple operators and AND/OR logic. Enables complex queries across any contact property for targeted contact retrieval.

  • PATCHupdate_contact

    Updates existing contact properties in HubSpot CRM by contact ID. Performs partial updates allowing modification of specific fields without affecting others.

Company, 7 operations

  • POSTbatch_create_companies

    Creates multiple company records in a single API call.

  • POSTcreate_company

    Creates a new company record in HubSpot CRM with specified business properties. Establishes account records for B2B sales tracking and organizational data management.

  • DELETEdelete_company

    Permanently removes a company record from the CRM.

  • GETget_company

    Retrieves a specific company record by ID with customizable property selection.

  • GETlist_companies

    Retrieves a paginated list of company records from HubSpot CRM. Returns company properties like name, domain, industry, and size for account management and B2B workflows.

  • POSTsearch_companies

    Searches companies using filter groups with multiple operators and AND/OR logic.

  • PATCHupdate_company

    Updates company properties like name, domain, industry, or custom fields.

Deal, 7 operations

  • POSTbatch_create_deals

    Creates multiple deal records in a single API call for bulk operations.

  • POSTcreate_deal

    Creates a new sales deal/opportunity in HubSpot CRM with pipeline stage and value. Tracks revenue opportunities through customizable sales stages for forecasting and reporting.

  • DELETEdelete_deal

    Permanently removes a deal from the CRM.

  • GETget_deal

    Retrieves a specific deal's details including all properties and associations.

  • GETlist_deals

    Retrieves a paginated list of sales deals from HubSpot CRM for pipeline management.

  • POSTsearch_deals

    Searches deals using filter groups for targeted pipeline queries.

  • PATCHupdate_deal

    Updates deal properties like amount, stage, or close date.

Ticket, 6 operations

  • POSTcreate_ticket

    Creates a new support ticket with subject, status, and priority.

  • DELETEdelete_ticket

    Permanently removes a support ticket from the system.

  • GETget_ticket

    Retrieves a specific support ticket by ID with all properties.

  • GETlist_tickets

    Retrieves all support tickets from HubSpot Service Hub.

  • POSTsearch_tickets

    Searches tickets using filter groups with multiple operators for targeted retrieval.

  • PATCHupdate_ticket

    Updates ticket properties like status, priority, or owner assignment.

Association, 5 operations

  • PUTassociate_objects

    Creates relationships between HubSpot CRM objects such as contacts, companies, and deals. Enables linking records to build complete customer relationship graphs.

  • POSTbatch_read_associations

    Retrieves associations for multiple records in a single request using v4 API.

  • PUTcreate_default_association

    Creates a default unlabeled association between two CRM records using v4 API.

  • DELETEdelete_association

    Removes an association between two CRM records without deleting either record.

  • GETget_associations

    Retrieves all associations from a specific record to a target object type using v4 API.

Note, 5 operations

  • POSTcreate_note

    Creates a new note with content and optional associations to contacts, companies, or deals.

  • DELETEdelete_note

    Permanently removes a note engagement.

  • GETget_note

    Retrieves a specific note by ID with its content and metadata.

  • GETlist_notes

    Retrieves all notes/engagements with optional associations.

  • PATCHupdate_note

    Updates the content or properties of an existing note.

Call, 2 operations

  • POSTcreate_call

    Creates a call engagement with duration, outcome, and notes.

  • GETlist_calls

    Retrieves all call engagements with duration, outcome, and associations.

Email, 2 operations

  • POSTcreate_email

    Creates an email engagement to log sent or received emails.

  • GETlist_emails

    Retrieves all email engagements with subject, body, and tracking data.

Meeting, 2 operations

  • POSTcreate_meeting

    Creates a meeting engagement with title, time, and outcome.

  • GETlist_meetings

    Retrieves all meeting engagements with details and attendees.

Owner, 2 operations

  • GETget_owner

    Retrieves details for a specific HubSpot owner by ID, including name, email, and team assignments.

  • GETlist_owners

    Retrieves all HubSpot users who can be assigned as owners of CRM records. Returns user details for sales rep assignment, contact routing, and team management.

Pipeline, 2 operations

  • GETget_pipeline

    Retrieves a specific pipeline and its stages by pipeline ID.

  • GETlist_pipelines

    Retrieves all pipelines and their stages for deals or tickets.

Property, 2 operations

  • POSTcreate_property

    Creates a new custom property for a CRM object type with specified data type and field configuration.

  • GETget_properties

    Retrieves all available properties (fields) for a CRM object type. Returns property definitions including names, types, and options for dynamic form building and data validation.

Task, 2 operations

  • POSTcreate_task

    Creates a new task with subject, status, priority, and associations.

  • GETlist_tasks

    Retrieves all tasks with their status, due dates, and assignments.

Association label, 1 operation

  • GETget_association_labels

    Retrieves all available association types and labels for object relationships.

Form, 1 operation

  • GETlist_forms

    Retrieves all HubSpot marketing forms.

Pipeline stage, 1 operation

  • GETlist_pipeline_stages

    Retrieves all stages for a specific pipeline including display order and metadata.

Submission, 1 operation

  • GETget_form_submissions

    Retrieves form submission data for a specific form.

Workflow, 1 operation

  • GETlist_workflows

    Retrieves all automation workflows in HubSpot.

OAuth scopes HubSpot requires

Each operation declares the scopes HubSpot requires for it.

  • crm.objects.contacts.writeneeded by batch_create_contacts, batch_update_contacts, batch_upsert_contacts and 3 more
  • crm.objects.companies.writeneeded by batch_create_companies, create_company, delete_company and 1 more
  • crm.objects.contacts.readneeded by batch_read_contacts, get_contact, list_contacts and 1 more
  • crm.objects.deals.writeneeded by batch_create_deals, create_deal, delete_deal and 1 more
  • crm.objects.companies.readneeded by get_company, list_companies, search_companies
  • crm.objects.deals.readneeded by get_deal, list_deals, search_deals
  • formsneeded by get_form_submissions, list_forms
  • automationneeded by list_workflows

HubSpot API rate limits

  • 660 requests per minute

110 req/10s for OAuth apps. 250,000 daily limit varies by plan.

These are the limits HubSpot documents, not ones LiveContext measured. They can change and often depend on your plan, so check the HubSpot documentation for current values.

Use HubSpot from Claude Code, Cursor or Codex

Connect HubSpot in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its HubSpot operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect HubSpot

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect HubSpot once

    Add your HubSpot connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

HubSpot integration FAQ

What can you do with the HubSpot integration?
LiveContext exposes 59 operations on HubSpot, covering contact, company, deal and ticket. Common uses include Clean test data, Call logging and Communication history.
Which OAuth scopes does HubSpot require?
It depends on the operation: each one declares the scopes HubSpot requires for it. The most common are crm.objects.contacts.write (6 operations), crm.objects.companies.write (4 operations), crm.objects.contacts.read (4 operations) and crm.objects.deals.write (4 operations).
What are the HubSpot API rate limits?
HubSpot documents 660 requests per minute. 110 req/10s for OAuth apps. 250,000 daily limit varies by plan. Limits are set by HubSpot and can depend on your plan.

Popular integrations

Browse the whole catalog