CRM

Connect HubSpot to any app

Connecting HubSpot to APIANT lets your AI client build automations on your contacts, companies, deals and tickets, including two-way sync with another system. For example: when a deal changes stage, create the invoice in QuickBooks Online and post the amount to a Slack channel.

Connects with OAuthapi.hubapi.com

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

Build solutions, not workarounds.

What do you want to automate with HubSpot?

Ask the assistant

You'll sign in before anything runs. What you typed comes with you.

Connect your AI client

Give your AI client this address.

https://mcp.apiant.ai

Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

Set it up in your client
Claude Code

Run this in the directory you want to work in.

claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai

Start Claude Code there, approve the server, and sign in in the browser page it opens.

Claude Code guide (opens in a new tab)
Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

Setup guide (opens in a new tab)
Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

Setup guide (opens in a new tab)
Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

Setup guide (opens in a new tab)
Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

Setup guide (opens in a new tab)
Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

Setup guide (opens in a new tab)

Ask in plain language and your agent picks the HubSpot operations, maps the fields both ways, and tests every scenario before the automation runs.

Build from the assistant inside APIANT, or from your own AI client over MCP. Either way the automation lands in the same account, and the free plan covers both.

Pair it

Connect HubSpot with another app

What your agent can do with HubSpot

Triggers and actions 29 triggers · 137 actions

  • Trigger
    Company deleted

    Triggered on deletion of existing company. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Contact deleted

    Triggered on deletion of existing contact. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Deal deleted

    Triggered on deletion of existing deal. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Deal stage changed

    Triggers when a deal moves to a new stage in a pipeline.

  • Trigger
    Form submitted

    Triggers when a contact submits the chosen HubSpot form. Turning the automation on creates a HubSpot workflow that forwards each submission; turning it off deletes that workflow. Requires a HubSpot plan whose workflows can send webhooks.

  • Trigger
    New associated object

    Triggers when a new record of one CRM object type becomes associated with a record of another object type (for example, a deal linked to a company).

  • Trigger
    New blog post

    Triggers on a new blog post added to the selected blog.

  • Trigger
    New calendar task +30d

    Triggered when a new calendar task is created in the next 30 days. Note: this applies to HubSpot (Marketing), and not HubSpot CRM's tasks. Note: only supports up to 499 tasks in the next 30 days, an error will occur if more than 499 tasks exist.

  • Trigger
    New company

    Triggered when a new company is added.

  • Trigger
    New company (instant)

    Triggered on creation of new company. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    New contact

    Triggered on creation of new contact. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    New deal

    Triggered on creation of new deal. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    New note added to contact

    Triggers when a note linked to a contact is added in HubSpot.

  • Trigger
    New or changed engagements

    Triggers on new or changed engagements.

  • Trigger
    New or updated company

    Triggered when a company is created or modified

  • Trigger
    New or updated contact

    Triggers on new or updated contacts.

  • Trigger
    New or updated contact (Custom Fields Included)

    Triggered when a contact is created or updated.

  • Trigger
    New or updated deal

    Triggered when a deal is created or updated.

  • Trigger
    New or updated ticket

    Triggered when a ticket is created or updated.

  • Trigger
    New social media message

    Triggered when a new social media message is added.

  • Trigger
    New ticket

    Triggers when new ticket is available.

  • Trigger
    Ticket property changed

    Triggered when the chosen property changes on a ticket

  • Trigger
    Two-way sync new or updated companies

    A trigger for two-way syncing new and updated companies, with enhanced on-the-fly mapping. Can only be used with enhanced two-way sync actions that support on-the-fly mapping.

  • Trigger
    Two-way sync new or updated contacts

    A trigger for two-way syncing new and updated contacts, with enhanced on-the-fly mapping. Can only be used with enhanced two-way sync actions that support on-the-fly mapping.

  • Trigger
    Updated company custom property

    Triggered when the selected custom property is updated on a company. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Updated contact

    Triggered when a contact is updated.

  • Trigger
    Updated contact custom property

    Triggered when the selected custom property is updated on a contact. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Updated contact custom property by name

    Triggered when the specified custom property is updated on a contact. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Trigger
    Updated deal custom property

    Triggered when the selected custom property is updated on a deal. Should only be set up with one account per organization, as all user accounts within an organization share the same portalId (unique identifier).

  • Action
    Add company

    Adds a new company.

  • Action
    Add contact

    Adds a new contact. An error occurs if the email already exists. If a company name is found, the contact is associated with the company. Emits the contact ID if added.

  • Action
    Add contact to list

    Adds a contact to the specified contact list.

  • Action
    Add contact to workflow

    Enrolls a contact to a workflow provided the workflow ID and the contact email.

  • Action
    Add custom object record

    Adds a record to the specified custom object.

  • Action
    Add deal

    Creates a new deal and optionally associates it with a contact and/or company.

  • Action
    Add meeting

    Creates a meeting engagement.

  • Action
    Add or update company

    Adds a new company if the name does not already exist, otherwise updates the existing company. Only non-empty properties are updated.

  • Action
    Add or update contact

    Adds or updates a contact. If a company name is found, the contact is associated with the company. The ID of the added/updated contact is emitted as output.

  • Action
    Add or update deal

    Searches for a deal by name. If found it updates it, if not it adds it. If a contact email or company name is provided, the deal is associated with them if found.

  • Action
    Add ticket

    Adds a new ticket.

  • Action
    Append company dropdown property values

    Appends one or more values to a company dropdown property. An error occurs if the named property is not found.

  • Action
    Append company multi-select property dropdown values

    Appends one or more dropdown values to a company multi-select property. An error occurs if the named property is not found.

  • Action
    Append contact dropdown property values

    Appends one or more values to a contact dropdown property. An error occurs if the named property is not found.

  • Action
    Append contact multi-select property dropdown values

    Appends one or more dropdown values to a contact multi-select property. An error occurs if the named property is not found.

  • Action
    Append deal dropdown property values

    Appends one or more values to a deal dropdown property. An error occurs if the named property is not found.

  • Action
    Append deal multi-select property dropdown values

    Appends one or more dropdown values to a deal multi-select property. An error occurs if the named property is not found.

  • Action
    Append ticket dropdown property values

    Appends one or more values to a ticket dropdown property. An error occurs if the named property is not found.

  • Action
    Append ticket multi-select property values

    Appends one or more values to a ticket multi-select property. An error occurs if the named property is not found.

  • Action
    Clear contact property value

    Erases the value of specified property for the specified contact.

  • Action
    Clear deal property value

    Erases the value of specified property for the specified deal.

  • Action
    Clear ticket property value

    Erases the value of specified property for the specified ticket.

  • Action
    Convert to valid property name

    Converts a string value into a valid property name. Property names must begin with a letter and contain only up to 100 lowercase letters, numbers, or underscores, without any spaces, commas, or special characters.

  • Action
    Copy workflow

    Copies the specified workflow. The new workflow will have "COPY" appended to its name.

  • Action
    Create a blog post

    Creates a new blog post

  • Action
    Create a company property: boolean checkbox

    Creates a boolean checkbox company property. No error occurs if the property already exists.

  • Action
    Create a company property: dropdown select

    Creates a dropdown select list company property. No error occurs if the property already exists.

  • Action
    Create a company property group

    Creates a company property group. No error occurs if the group already exists.

  • Action
    Create a company property: multi-select

    Creates a multi-select list company property. No error occurs if the property already exists.

  • Action
    Create a company property: single value

    Creates a company property that can be a single value such as text strings, numbers, dates, and datetimes. No error occurs if the property already exists.

  • Action
    Create a contact list

    Creates a contact list. An error occurs if the list already exists.

  • Action
    Create a contact property: boolean checkbox

    Creates a boolean checkbox contact property. No error occurs if the property already exists.

  • Action
    Create a contact property: dropdown select

    Creates a dropdown select list contact property. No error occurs if the property already exists.

  • Action
    Create a contact property group

    Creates a contact property group. No error occurs if the group already exists.

  • Action
    Create a contact property: multi-select

    Creates a multi-select list contact property. No error occurs if the property already exists.

  • Action
    Create a contact property: single value

    Creates a contact property that can be a single value such as text strings, numbers, dates, and datetimes. No error occurs if the property already exists.

  • Action
    Create a deal pipeline and stages

    Creates a new deal pipeline and up to 10 stages.

  • Action
    Create a deal property

    Creates a deal property. No error occurs if the property already exists.

  • Action
    Create a deal property: boolean checkbox

    Creates a boolean checkbox deal property. No error occurs if the property already exists.

  • Action
    Create a deal property: dropdown select

    Creates a dropdown select list deal property. No error occurs if the property already exists.

  • Action
    Create a deal property group

    Creates a deal property group. No error occurs if the group already exists.

  • Action
    Create a deal property: multi-select

    Creates a multi-select list deal property. No error occurs if the property already exists.

  • Action
    Create a deal property: single value

    Creates a deal property that can be a single value such as text strings, numbers, dates, and datetimes. No error occurs if the property already exists.

  • Action
    Create an email engagement

    Logs an incoming email in HubSpot and links it to the given contacts, companies and deals.

  • Action
    Create a note engagement

    Creates a note in HubSpot and links it to the given contacts, companies, deals and tickets.

  • Action
    Create association

    Creates an association between two objects

  • Action
    Create association: contact to contact

    Creates an association between two contacts

  • Action
    Create association type

    Creates an association type between two objects. An error occurs if the association already exists.

  • Action
    Create a task engagement

    Creates a new task engagement.

  • Action
    Create a ticket property: boolean checkbox

    Creates a boolean checkbox ticket property. No error occurs if the property already exists.

  • Action
    Create a ticket property: dropdown select

    Creates a dropdown select list ticket property. No error occurs if the property already exists.

  • Action
    Create a ticket property group

    Creates a ticket property group. No error occurs if the group already exists.

  • Action
    Create a ticket property: multi-select

    Creates a multi-select list ticket property. No error occurs if the property already exists.

  • Action
    Create a ticket property: single value

    Creates a ticket property that can be a single value such as text strings, numbers, dates, and datetimes. No error occurs if the property already exists.

  • Action
    Create custom association

    Creates an association between two objects using a custom association type. Use the "get association types" action to obtain the custom association type.

  • Action
    Create record

    Creates a record of the selected CRM object type with the supplied properties.

  • Action
    CRM card: set display values

    Builds the results payload a HubSpot CRM card data-fetch request expects: one card entry carrying the record id it describes, its title, an optional link, and the property rows to display.

  • Action
    Delete contact

    Deletes a contact provided its contact ID.

  • Action
    Delete contact list

    Deletes a contact list specified by ID.

  • Action
    Delete contact secondary email

    Deletes the specified secondary email for the specified contact. An error will occur if either the contact or secondary email is not found.

  • Action
    Delete deal

    Deletes a deal provided its deal ID.

  • Action
    Delete record

    Deletes a record of the selected CRM object type by ID.

  • Action
    Delete ticket

    Deletes a ticket provided a ticket ID.

  • Action
    Find companies associated to contact

    Returns up to 500 company IDs associated with the specified contact

  • Action
    Find company by name

    Searches for a company by name (case-insensitive) and emits the company's ID. Zero, one, or multiple ID's may be emitted.

  • Action
    Find company by property

    Searches for a company by property (case-insensitive) and emits the company's information. Only the first matching company is emitted. If no matches are found, an error occurs.

  • Action
    Find contact by email

    Finds a contact by email. If the contact is not found, no information is emitted and no error occurs.

  • Action
    Find contact by property

    Search HubSpot contacts by any property name/value pair (EQ filter). Returns the first matching contact's standard fields.

  • Action
    Find contact list by name

    Look up a contact list by its name and return its v3 list id. Use this instead of 'Get all contact lists' whenever the id will be passed to a v3 endpoint such as 'Add contact to list': the v1 lists endpoint returns ids from a different id space, and feeding a v1 id to a v3 endpoint silently targets a different list.

  • Action
    Find contacts by property

    Returns contact IDs for all contacts matching the specified property value.

  • Action
    Find custom object records associated to contact

    Given a HubSpot contact ID and a custom object type, returns the IDs of all custom object records associated to that contact. Paginated via the v4 associations API. Used by the CRMConnect v3.8 membership reconciliation pass.

  • Action
    Find custom object records by property

    Returns record IDs for all records of the specified custom object matching the specified property value.

  • Action
    Find deal by name

    Searches for a deal by name (case-insensitive) and emits the company's ID. Zero, one, or multiple ID's may be emitted.

  • Action
    Find deal by property

    Searches for a deal by property (case-insensitive) and emits its information. Only the first matching deal is emitted. If no matches are found, an error occurs.

  • Action
    Find deals associated to company

    Returns up to 500 deal IDs associated with the specified company

  • Action
    Find deals associated to contact

    Returns up to 500 deal IDs associated with the specified contact

  • Action
    Find owner by email

    Fetches owner details for an owner with the specified email address.

  • Action
    Find pipeline by name

    Finds a pipeline provided its name and its type.

  • Action
    Find recently modified deals

    Returns recently modified deals.

  • Action
    Get associated records with labels

    List the records associated to a record, including the label and type of each association.

  • Action
    Get association types

    Returns all association types between the specified two object types.

  • Action
    Get calls for contact

    Returns all calls with the specified contact, optionally within a specified datetime range.

  • Action
    Get calls for deal

    Returns all calls with the specified deal, optionally within a specified datetime range.

  • Action
    Get company

    Returns company details for the specified ID.

  • Action
    Get contact

    Returns contact details for the specified ID.

  • Action
    Get contact list

    Read a single contact list by its ID.

  • Action
    Get contact secondary emails

    Returns all secondary emails for the specified contact.

  • Action
    Get custom object records batch by IDs

    Given a custom object type, a comma-separated list of record IDs, and a comma-separated list of property API names, returns one record per ID with the requested properties, one batch per call. Used by the CRMConnect v3.8 membership reconciliation pass.

  • Action
    Get deal

    Returns details for the deal with the specified ID.

  • Action
    Get emails for contact

    Returns all emails with the specified contact, optionally within a specified datetime range.

  • Action
    Get emails for deal

    Returns all emails with the specified deal, optionally within a specified datetime range.

  • Action
    Get meetings for contact

    Returns all meetings with the specified contact, optionally within a specified datetime range.

  • Action
    Get meetings for deal

    Returns all meetings with the specified deal, optionally within a specified datetime range.

  • Action
    Get notes for contact

    Returns all notes with the specified contact, optionally within a specified datetime range.

  • Action
    Get notes for deal

    Returns all notes with the specified deal, optionally within a specified datetime range.

  • Action
    Get Object by Field Value

    Looks up a record of the selected HubSpot CRM object type by an exact match on a single property (the Object, Field, and Value settings), returning the first matching record ID.

  • Action
    Get object property info

    Returns information for the specified property for the specified company, contact, or deal object type.

  • Action
    Get owner

    Returns details for the owner with the specified ID.

  • Action
    Get record

    Returns a single record of the selected CRM object type by ID.

  • Action
    Get tasks for contact

    Returns all tasks with the specified contact, optionally within a specified datetime range.

  • Action
    Get tasks for deal

    Returns all tasks with the specified deal, optionally within a specified datetime range.

  • Action
    Get ticket

    Returns details for the ticket with the specified ID.

  • Action
    Get total number of contacts having property

    Returns the total number of contacts having the specified property.

  • Action
    Import records from CSV into object

    Imports records from a CSV file into a specified object.

  • Action
    List all workflows

    Returns the name and id of all workflows visible in the portal.

  • Action
    List contact IDs of a company

    Given a company ID, finds all contacts in that company.

  • Action
    List contact list memberships (v3)

    Returns the contacts that are currently members of a HubSpot contact list, identified by the list's v3 (ILS) id.

  • Action
    List owners

    Returns a list of HubSpot account owners, supporting pagination and optional filtering by email.

  • Action
    List pipelines

    Returns the pipelines for deals or tickets, depending on which object type you select.

  • Action
    List pipeline stages

    Returns the stages in a specific deal or ticket pipeline.

  • Action
    List records

    Lists records of the selected CRM object type.

  • Action
    Log call

    Logs a completed call in HubSpot and links it to the given contacts.

  • Action
    Merge contacts

    Merge two contact records. The contact ID will be treated as the primary contact, and the contact ID to merge will be treated as the secondary contact. Most recent property values such as email and name will overwrite older values.

  • Action
    Parse property option errors

    Emits arrays of property and option names parsed from the input error message. Empty arrays are emitted if the input error message is empty.

  • Action
    Remove contact from list (v3)

    Removes a contact from a HubSpot contact list, using the list's v3 (ILS) id. Only MANUAL and SNAPSHOT lists accept membership changes.

  • Action
    Search contact lists (v3)

    Returns the contact lists in the connected HubSpot account, optionally narrowed by a name search, processing type, or object type. Each list comes back with its ILS (v3) list id, name and processing type.

  • Action
    Search records

    Searches records of the selected CRM object type by filter criteria.

  • Action
    Submit a form

    Submits a form to the Forms API

  • Action
    Two-way sync add or update a company

    An action for two-way syncing new and updated companies, with enhanced on-the-fly mapping using company names for matching. Can only be used with enhanced two-way sync triggers that support on-the-fly mapping.

  • Action
    Unsubscribe contact from all lists

    Unsubscribes a contact from all lists.

  • Action
    Update company

    Updates an existing company specified by ID. A field you map but leave EMPTY is IGNORED - the stored value is preserved, not erased. Because of that, this action cannot CLEAR a property: to empty one, edit it in HubSpot directly.

  • Action
    Update company multi-select property - check value

    Updates the specified multi-select property for the specified company such that the specified value is checked if not already checked.

  • Action
    Update company multi-select property - uncheck value

    Updates the specified multi-select property for the specified company such that the specified value is unchecked (removed).

  • Action
    Update contact

    Updates an existing contact specified by ID. A field you map but leave EMPTY is IGNORED - the stored value is preserved, not erased. Because of that, this action cannot CLEAR a property: to empty one, edit it in HubSpot directly.

  • Action
    Update contact multi-select property - check value

    Updates the specified multi-select property for the specified contact such that the specified value is checked if not already checked.

  • Action
    Update contact multi-select property - uncheck value

    Updates the specified multi-select property for the specified contact such that the specified value is unchecked (removed).

  • Action
    Update contact properties

    Updates the values of up to 6 specified properties for the specified contact. A field you map but leave EMPTY is IGNORED - the stored value is preserved, not erased. Because of that, this action cannot CLEAR a property: to empty one, edit it in HubSpot directly.

  • Action
    Update custom object multi-select property - check value

    Updates the specified multi-select property for the specified custom object record such that the specified value is checked if not already checked.

  • Action
    Update custom object record

    Updates a specified record in the specified custom object.

  • Action
    Update custom object record pipeline and stage

    Updates the specified custom object record to place it in the specified pipeline and stage.

  • Action
    Update deal

    Updates an existing deal specified by ID. A field you map but leave EMPTY is IGNORED - the stored value is preserved, not erased, and the related calculated amounts (amount in home currency, forecast amount) are left intact. Because of that, this action cannot CLEAR a property: to empty one, edit it in HubSpot directly.

  • Action
    Update deal multi-select property - check value

    Updates the specified multi-select property for the specified deal such that the specified value is checked if not already checked.

  • Action
    Update deal multi-select property - uncheck value

    Updates the specified multi-select property for the specified deal such that the specified value is unchecked (removed).

  • Action
    Update record

    Updates properties on a record of the selected CRM object type by ID. A field you map but leave EMPTY is IGNORED - the stored value is preserved, not erased. Because of that, this action cannot CLEAR a property: to empty one, edit it in HubSpot directly.

  • Action
    Update ticket multi-select property - check value

    Updates the specified multi-select property for the specified ticket such that the specified value is checked if not already checked.

  • Action
    Update ticket multi-select property - uncheck value

    Updates the specified multi-select property for the specified ticket such that the specified value is unchecked.

  • Action
    Upload Files

    Imports a file into the HubSpot File Manager from a public URL (asynchronous import). Set the source URL plus optional name, public/indexable access, and hidden flag; emits the created file reference.

Related apps

More in CRM

Reviews

What our customers say

Questions

HubSpot, answered

Is there a HubSpot MCP server?

APIANT's MCP server at https://mcp.apiant.ai works with HubSpot. Add that address to any AI client that takes a remote MCP server, Claude Code included, sign in once in your browser, and your client can build, test and run automations that use HubSpot's triggers and actions. Nothing to install, and calls over MCP use no assistant credits.

How does HubSpot authentication work?

You authorize your HubSpot portal with OAuth from the Connections page in APIANT. The token is stored encrypted, APIANT never asks for your HubSpot password, and Reconnect or Disconnect sit in the connection's menu. Details are in the Connections guide at https://apiant.ai/docs/apps/connections.

Do I need to use the HubSpot API myself?

No. The HubSpot triggers and actions listed on this page already call the HubSpot API for you. Describe what should happen, and your agent picks the operations, maps the fields and tests the result. For the step-by-step setup, see the HubSpot guide at https://apiant.ai/docs/apps/hubspot.

What can start an automation from HubSpot?

Any of HubSpot's 29 triggers in the catalog, including Deal stage changed, Form submitted, New associated object and New blog post. Describe the moment in plain language and your agent picks the right one.

What can your agent do in HubSpot?

Any of HubSpot's 137 actions, including Create a blog post, Create a company property: boolean checkbox, Create a company property: dropdown select and Create a company property group. Your agent maps the data both ways and tests every scenario before it ships.

Which apps can HubSpot connect to?

Any app in the catalog; the list on this page pairs HubSpot with each of them. If the other app is missing, point your agent at its API documentation and it builds the connector.

What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.