Overview
All-in-one platform that integrates marketing, sales, and customer service software. Through Langdock’s integration, you can access and manage HubSpot directly from your conversations.Authentication: OAuth
Category: Sales & CRM
Availability: All workspace plans
Available Actions
Create company
hubspot.create_company
Creates a new company in HubSpot
Requires Confirmation: Yes
Parameters:
name(TEXT, Required): Company namedomain(TEXT, Optional): The company’s website domain without protocol or paths (e.g., “example.com”). HubSpot uses this to automatically populate other company information through enrichmentindustry(TEXT, Optional): The sector or industry the company operates in. HubSpot has predefined options but allows custom values. Default values are: ACCOUNTING, AIRLINES_AVIATION, ALTERNATIVE_DISPUTE_RESOLUTION, AUTOMOTIVE, BIOTECHNOLOGY, COMPUTER_SOFTWARE, CONSUMER_ELECTRONICS, CONSUMER_SERVICES, CONSUMER_GOODS, FOOD_P…website(TEXT, Optional): The full URL of the company’s website, including protocol (e.g., “https://www.example.com”). This helps with linking directly to the company’s web presence.phone(TEXT, Optional): The main contact phone number for the company, typically formatted according to local conventions.address(TEXT, Optional): The street address of the company’s primary location.city(TEXT, Optional): The city where the company’s primary office or headquarters is located.state(TEXT, Optional): The state, province, or region where the company is located.country(TEXT, Optional): The country where the company is based.description(TEXT, Optional): A brief overview of the company, its mission, products, or services. This provides context about what the company does.ownerId(TEXT, Optional): The HubSpot user ID of the person responsible for managing this company record. Use the ‘Get HubSpot owners’ action to find owner IDs by email or list all available owners.associations(TEXT, Optional): Associations to other objects (contacts, meeting, notes, deals etc.) Array of association objects associationTypeId are dependent on the associated object. The following exist, please use them: 450 Company to company 14 Child to parent company 13 Parent to child company 280 Company to contact 2 C…additionalProperties(OBJECT, Optional): Any custom properties specific to your HubSpot account that you want to set for this company. IMPORTANT: Do NOT make up additional properties. ONLY get them from the context or use the ones from the example. Example: {“annualrevenue”: “1”, “numberofemployees”: “250”}
Create contact
hubspot.create_contact
Creates a new contact in HubSpot
Requires Confirmation: Yes
Parameters:
email(TEXT, Required): The contact’s email addressfirstName(TEXT, Optional): The contact’s first namelastName(TEXT, Optional): The contact’s last namecompany(TEXT, Optional): The name of the company the contact works for (this is different from creating a company association)jobtitle(TEXT, Optional): The contact’s job titlephone(TEXT, Optional): The contact’s phone numberaddress(TEXT, Optional): Address of the contactcity(TEXT, Optional): City of the contactstate(TEXT, Optional): State of the contact (within thier country)zip(TEXT, Optional): ZIP-Code of the contactcountry(TEXT, Optional): Country of the contactwebsite(TEXT, Optional): Link to a personal profile of the contact or of the companyowner(TEXT, Optional): HubSpot owner ID of the responsible person for that contact. Use the ‘Get HubSpot owners’ action to find owner IDs by email or list all available owners.leadStatus(TEXT, Optional): The current status of a lead in the sales pipeline. HubSpot uses specific internal names for lead status values. Default values are: NEW, OPEN, IN_PROGRESS, OPEN_DEAL, UNQUALIFIED, ATTEMPTED_TO_CONTACT, CONNECTED, BAD_TIMING When specifying a lead status, use the exact internal name format shown …lifecycleStage(TEXT, Optional): The lifecycle stage of a contact or company in HubSpot’s marketing and sales funnel. This field uses specific internal names or numeric ids to track progression through the customer journey. Default values are: lead (represents “New”) 967418674 (represents “Lead”) marketingqualifiedlead (represen…leadSource(TEXT, Optional): The source from which the lead originated in HubSpot. HubSpot has predefined options but allows custom values. Default values are: email_outbound, Event, facebook_ads, instagram_ads, linkedin_ads, other, Partnership, Referral - customer, Referral - other, self_sign_up, website_demo, linkedin_cont…associations(TEXT, Optional): (Array): Links between this contact and other HubSpot objects like companies, deals, or tickets, allowing you to build relationships in the CRM. The association types use specific internal ids to define relationships: Examples: Contact to Company: [{“to”: {“id”:“31035681285”},“types”: [{“asso…additionalProperties(OBJECT, Optional): Any custom properties specific to your HubSpot account that you want to set for this contact. IMPORTANT: Do NOT make up additional properties. ONLY get them from the context or use the ones from the example. Example: {“annualrevenue”: “1000”, “gender”: “male”}
Create deal
hubspot.create_deal
Creates a new deal in HubSpot
Requires Confirmation: Yes
Parameters:
dealName(TEXT, Required): The name of the deal/opportunity Example: “Acme Corp - Enterprise License”pipeline(TEXT, Required): The pipeline the deal belongs to If omitted, the default pipeline is used IMPORTANT! DO NOT SKIP THIS STEP:! if not a numerical pipeline id is given to you, ALWAYS look up the id for the pipeline he mentioned with another action ALSO DO NOT SKIP THIS: If no stage is provided, ask the user for a s…amount(NUMBER, Optional): The monetary value of the deal Example: “5000”stage(TEXT, Optional): The stage of the deal in the pipeline Must match a valid stage id in the account. IMPORTANT! DO NOT SKIP THIS STEP:! if no id that is in the right format is given to you, ALWAYS look up the id for the stage he mentioned with another action! Default stage ids are: appointmentscheduled, qualifiedto…closeDate(TEXT, Optional): The expected close date of the deal Format: ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) Example: “2025-06-30T12:00:00.000Z”dealOwner(TEXT, Optional): User ID of the HubSpot user responsible for this deal. Default is the current user’s ID. IMPORTANT, DO NOT SKIP THIS STEP: If not specified always ask the user who the deal owner should be. Use the ‘Get HubSpot owners’ action to find owner IDs by email or list all available owners. Example: 78376226description(TEXT, Optional): A description of the deal Example: “Enterprise license for 100 users”associatedObjects(MULTI_LINE_TEXT, Optional): Associations to other objects (contacts, companies, etc.) Array of association objects IMPORTANT DO NOT SKIP THIS: associationTypeId are dependent on the associated object. The following exist, please use them in the structure below: 451 Deal to deal 3 Deal to contact 341 Deal to company 27 Deal …additionalProperties(OBJECT, Optional): Any custom properties specific to your HubSpot account that you want to set for this deal. IMPORTANT: Do NOT make up additional properties. ONLY get them from the context or use the ones from the example. Example: {“custom_property”: “value”, “another_property”: “value”}
Create note
hubspot.create_note
Creates a note that an object can be associated with
Requires Confirmation: No
Parameters:
ownerId(TEXT, Required): Owner ID of the HubSpot user creating the note. Use the ‘Get HubSpot owners’ action to find owner IDs by email or list all available owners.noteBody(TEXT, Required): Text for the noteattachmentIds(TEXT, Optional): If you want to put a single or multiple attachments onto the note.associations(TEXT, Required): A comma-separated list of object type and ID pairs, where each pair is formatted as objectType:objectId. For example: CONTACT:123456,COMPANY:789012,DEAL:345678. Description: Specifies the HubSpot objects to associate with the current object. Each association consists of an object type and its cor…
Create task
hubspot.create_task
Creates a new task in HubSpot
Requires Confirmation: Yes
Parameters:
subject(TEXT, Required): The title or subject of the taskbody(MULTI_LINE_TEXT, Optional): The description or body text of the taskstatus(TEXT, Optional): The completion status of the task. Valid values are: NOT_STARTED, COMPLETED, IN_PROGRESS, WAITING, DEFERRED Default: NOT_STARTEDpriority(TEXT, Optional): The priority level of the task. Valid values are: LOW, MEDIUM, HIGH If not specified, no priority is set.dueDate(TEXT, Optional): The due date and time for the task Format: ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) or Unix timestamp in milliseconds Example: “2025-06-30T12:00:00.000Z” or “1719748800000”ownerId(TEXT, Optional): HubSpot owner ID of the person assigned to this task. Use the ‘Get HubSpot owners’ action to find owner IDs by email or list all available owners.taskType(TEXT, Optional): The type of task. Common values include: EMAIL, CALL, TODO Default task types may vary by HubSpot account configuration.additionalProperties(OBJECT, Optional): Any custom properties specific to your HubSpot account that you want to set for this task. IMPORTANT: Do NOT make up additional properties. ONLY get them from the context or use the ones from the example. Example: {“hs_task_reminders”: “1719748800000”, “hs_task_is_all_day”: “true”}associations(TEXT, Optional): (Array): Links between this task and other HubSpot objects like contacts, companies, or deals. The association types use specific internal ids to define relationships: Examples: Task to Contact: [{“to”: {“id”:“31035681285”},“types”: [{“associationCategory”:“HUBSPOT_DEFINED”,“associationTypeId…
Create ticket
hubspot.create_ticket
Creates a new support ticket in HubSpot
Requires Confirmation: Yes
Parameters:
subject(TEXT, Required): The ticket subject/titledescription(MULTI_LINE_TEXT, Optional): Detailed description of the ticket issuepipeline(TEXT, Optional): The pipeline ID for the ticket. Use ‘Get ticket context’ action to find available pipeline IDs. If omitted, uses the default pipeline (usually ‘0’).stage(TEXT, Required): The pipeline stage ID for the ticket status. Use ‘Get ticket context’ action to find available stage IDs for your pipeline. IMPORTANT: Use the numeric stage ID, not the stage name.priority(SELECT, Optional): Ticket priority levelownerId(TEXT, Optional): HubSpot owner ID for the ticket. Use ‘Get HubSpot owners’ action to find owner IDs.associations(TEXT, Optional): Link the ticket to contacts, companies, or deals. Format: JSON array of association objects. Association type IDs: - 16: Ticket to Contact - 26: Ticket to Company - 28: Ticket to Deal Example: [{“to”:{“id”:“123”},“types”:[{“associationCategory”:“HUBSPOT_DEFINED”,“associationTypeId”:16}]}]additionalProperties(OBJECT, Optional): Any custom properties specific to your HubSpot account that you want to set for this ticket. IMPORTANT: Do NOT make up additional properties. ONLY get them from the context or use the ones from the example. Example: {“hs_ticket_category”: “PRODUCT_ISSUE”, “source_type”: “EMAIL”}
Find company
hubspot.find_company
Finds a company by searching
Requires Confirmation: No
Parameters:
searchQuery(TEXT, Optional): A text string for full-text search across all searchable properties. Empty search query returns all results based on other parameters.properties(TEXT, Optional): Specifies which company properties to include in the response. IMPORTANAT NEVER SKIP THIS STEP: ALWAYS create a string in this format [“property1”, “property2”, “property3”, …] listing all the properties that are relevant. Default: If omitted, only a minimal set of default properties is returne…sorts(TEXT, Optional): Defines how company search results should be ordered. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Here’s how to structure your sorts parameter effectively: Basic Structure The sorts parameter in HubSpot’s company search API …limit(NUMBER, Optional): Maximum number of records to return in a single request Default: 100 Range: 1-100 Example: 50filterGroups(TEXT, Optional): Allows you to create complex filtering logic to narrow down company search results. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Basic Structure A filter group in HubSpot’s API follows this structure: [{“filters”:[{“propert…
Find contact
hubspot.find_contact
Finds a contact by searching
Requires Confirmation: No
Parameters:
limit(TEXT, Optional): Maximum number of records to return in a single request. The default value is 100. The range for this parameter is from 1 to 100. For example, setting the limit to 50 will return up to 50 records in the response.properties(TEXT, Optional): Specifies which contact properties to include in the response. You can request any standard or custom contact properties that exist in your HubSpot account. IMPORTANAT NEVER SKIP THIS STEP: ALWAYS create a string in this format: [“property1”, “property2”, “property3”, …] listing all the propert…searchQuery(TEXT, Optional): A text string for full-text search across all searchable properties. Empty search query returns all results based on other parameters.filterGroups(TEXT, Optional): Allows you to create complex filtering logic to narrow down contact search results. IMPORTANT DO NOT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Basic Structure A filter group in HubSpot’s API follows this structure: [{“filters”:[{“prope…sorts(TEXT, Optional): Defines how results should be ordered. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Here’s how to structure your sorts parameter effectively: Basic Structure The sorts parameter in HubSpot’s search API follows this structure:…
Find deal
hubspot.find_deal
Finds a deal by searching
Requires Confirmation: No
Parameters:
limit(NUMBER, Optional): Maximum number of records to return in a single request Default: 100 Range: 1-100 Example: 50searchQuery(TEXT, Optional): A text string for full-text search across all searchable properties. Empty search query returns all results based on other parameters.filterGroups(TEXT, Optional): Allows you to create complex filtering logic to narrow down search results. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Basic Structure A filter group in HubSpot’s API follows this structure: [{“filters”:[{“propertyName”:”…properties(TEXT, Optional): Specifies which deal properties to include in the response. You can request any standard or custom deal properties that exist in your HubSpot account. IMPORTANT NEVER SKIP THIS STEP: ALWAYS create a string in this format: [“property1”, “property2”, “property3”, …] listing all the properties tha…sorts(TEXT, Optional): Defines how results should be ordered. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Here’s how to structure your sorts parameter effectively: Basic Structure The sorts parameter in HubSpot’s search API follows this structure:…
Find task
hubspot.find_task
Finds a task by searching
Requires Confirmation: No
Parameters:
searchQuery(TEXT, Optional): A text string for full-text search across all searchable properties. Empty search query returns all results based on other parameters.limit(NUMBER, Optional): Maximum number of records to return in a single request Default: 100 Range: 1-100 Example: 50properties(TEXT, Optional): Specifies which task properties to include in the response. You can request any standard or custom task properties that exist in your HubSpot account. IMPORTANT NEVER SKIP THIS STEP: ALWAYS create a string in this format: [“property1”, “property2”, “property3”, …] listing all the properties tha…filterGroups(TEXT, Optional): Allows you to create complex filtering logic to narrow down task search results. IMPORTANT DO NOT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Basic Structure A filter group in HubSpot’s API follows this structure: [{“filters”:[{“property…sorts(TEXT, Optional): Defines how results should be ordered. IMPORTANT DONT IGNORE: ALWAYS put a string in the right format here, not a json object, we will parse it internally. Here’s how to structure your sorts parameter effectively: Basic Structure The sorts parameter in HubSpot’s search API follows this structure:…
Find ticket
hubspot.find_ticket
Searches for tickets with optional filters and sorting
Requires Confirmation: No
Parameters:
limit(NUMBER, Optional): Maximum number of tickets to return (1-100). Default: 100searchQuery(TEXT, Optional): Full-text search across searchable ticket propertiesfilterGroups(OBJECT, Optional): Array of filter groups for complex filtering. Format: [{“filters”:[{“propertyName”:“hs_ticket_priority”,“operator”:“EQ”,“value”:“HIGH”}]}] Operators: EQ, NEQ, GT, GTE, LT, LTE, CONTAINS_TOKEN, HAS_PROPERTY, NOT_HAS_PROPERTY, BETWEEN, IN, NOT_IN Common properties: subject, content, hs_pipeline…properties(OBJECT, Optional): Array of property names to include in response. Example: [“subject”,“content”,“hs_pipeline_stage”,“hs_ticket_priority”,“hubspot_owner_id”,“createdate”]sorts(OBJECT, Optional): Array of sort objects. Format: [{“propertyName”:“createdate”,“direction”:“DESCENDING”}] Directions: ASCENDING, DESCENDING
Get company
hubspot.get_company
Gets a company by its id
Requires Confirmation: No
Parameters:
companyId(ID, Required): Id of the company to get. If no id is provided, all companies will be returned.
Get company context
hubspot.get_company_context
Gets all required information on company properties, and the actual property values from a specific company.
Requires Confirmation: No
Parameters:
propertyNames(TEXT, Optional): Optional: Comma-separated list of specific property names to retrieve.companyId(ID, Optional): Optional: Provide a specific company ID to retrieve its actual property values.
Get contact
hubspot.get_contact
Gets a contact by its id
Requires Confirmation: No
Parameters:
contactId(ID, Required): Id of the contact to get. If no id is provided, all contacts will be returned.
Get contact engagement
hubspot.get_contact_engagement
Retrieve engagement information like recent activities of a contact
Requires Confirmation: No
Parameters:
id(ID, Required): The id of the object to retrieve engagement from
Get current user context
hubspot.get_current_user_context
Gets the current user’s email, hubspot_owner_id, and other important info for later action calls
Requires Confirmation: No
Parameters: None
Output: Returns the operation result
Get deal
hubspot.get_deal
Gets a deal by its id
Requires Confirmation: No
Parameters:
dealId(ID, Required): Id of the deal to get. If no id is provided, all deals will be returned.
Get deal context
hubspot.get_deal_context
Gets required information on deal properties, available stages, and the actual property values from a specific deal.
Requires Confirmation: No
Parameters:
propertyNames(TEXT, Optional): Optional: Comma-separated list of specific property names to retrieve.dealId(ID, Optional): Optional: Provide a specific deal ID to retrieve its actual property values.
Get form
hubspot.get_form
Gets a form by its ID
Requires Confirmation: No
Parameters:
formId(TEXT, Required): The HubSpot form GUID. Also accepts full form URL.
Get form submissions
hubspot.get_form_submissions
Gets submissions for a HubSpot form by form ID
Requires Confirmation: No
Parameters:
formId(TEXT, Required): The HubSpot form GUID (e.g., 12345678-1234-1234-1234-123456789012). Also accepts a full HubSpot form URL - the GUID will be extracted automatically.limit(NUMBER, Optional): Maximum number of submissions to return. Defaults to 50. Increase up to 500 when you need a larger dataset from a high-volume form.
Get list
hubspot.get_list
Gets a list by its ID
Requires Confirmation: No
Parameters:
listId(TEXT, Required): The HubSpot list ILS ID. Also accepts full list URL.
Get HubSpot owners
hubspot.get_owners
Retrieves all HubSpot owners/users with optional filtering by email. Returns owner IDs that can be used in hubspot_owner_id fields when creating or updating contacts, companies, deals, and notes.
Requires Confirmation: No
Parameters:
email(TEXT, Optional): Optional: Search for a specific owner by their email address. If provided, only owners with this exact email will be returned.limit(NUMBER, Optional): Maximum number of owners to retrieve. Default is 100, maximum is 500. If you need more than 500 owners, the action will automatically paginate through all results up to your specified limit.includeInactive(BOOLEAN, Optional): Whether to include archived/inactive owners in the results. Default is false (only active owners).
Get task
hubspot.get_task
Gets a task by its id
Requires Confirmation: No
Parameters:
taskId(ID, Required): Id of the task to get. If no id is provided, all tasks will be returned.
Get ticket
hubspot.get_ticket
Retrieves a ticket by its ID
Requires Confirmation: No
Parameters:
ticketId(TEXT, Required): The HubSpot ticket ID to retrieve
Get ticket context
hubspot.get_ticket_context
Retrieves ticket pipelines, stages, and available properties to help with ticket creation and updates
Requires Confirmation: No
Parameters:
ticketId(TEXT, Optional): Optional: Provide a ticket ID to also retrieve its current property valuespropertyNames(TEXT, Optional): Optional: Comma-separated list of property names to filter the available properties. If omitted, all properties are returned.
List forms
hubspot.list_forms
Lists all forms in the HubSpot account with their IDs and names
Requires Confirmation: No
Parameters:
limit(NUMBER, Optional): Maximum number of forms to return (1-500). Default 100includeAllTypes(BOOLEAN, Optional): Include non-marketing forms (pop-ups, embedded, etc.). Default: only marketing forms
List lists
hubspot.list_lists
Lists all contact lists in the HubSpot account with their ILS IDs and names
Requires Confirmation: No
Parameters:
limit(NUMBER, Optional): Maximum number of lists to return (1-500). Default 100query(TEXT, Optional): Filter lists by name (optional)processingType(SELECT, Optional): Filter by list type
Update company
hubspot.update_company
Updates a company in HubSpot
Requires Confirmation: No
Parameters:
companyId(ID, Optional): id of the company that should be updatedproperties(TEXT, Optional): The “properties” parameter expects a JSON object containing company property values to update. You can provide these properties in one of two ways: 1. As individual properties in your request 2. As a JSON string that will be parsed Here’s what you need to know about the structure: FORMAT: A flat …
Update contact
hubspot.update_contact
Updates a contact in HubSpot
Requires Confirmation: No
Parameters:
properties(TEXT, Required): Properties to update on the HubSpot contact. IMPORTANT DO NOT SKIP THIS: ALWAYS provide a string in Json semantics, but NEVER a Json object each key is a HubSpot property name and each value is the new value to set. IMPORTANT DO NOT SKIP THIS: Old Values are overwritten so if something needs to b…contactId(ID, Required): id of the contact that should be updated
Update deal
hubspot.update_deal
Updates one or more fields from an existing deal
Requires Confirmation: No
Parameters:
properties(MULTI_LINE_TEXT, Required): Properties to update on the HubSpot deal. IMPORTANT DO NOT SKIP THIS: ALWAYS provide a string in Json semantics, but NEVER a Json object - each key is a HubSpot property name and each value is the new value to set. IMPORTANT DO NOT SKIP THIS: Old Values are overwritten so id something needs to be…dealId(ID, Required): id of the deal that should be updated
Update task
hubspot.update_task
Updates an existing task in HubSpot
Requires Confirmation: No
Parameters:
taskId(ID, Required): Id of the task that should be updatedproperties(MULTI_LINE_TEXT, Required): Properties to update on the HubSpot task. IMPORTANT DO NOT SKIP THIS: ALWAYS provide a string in Json semantics, but NEVER a Json object each key is a HubSpot property name and each value is the new value to set. IMPORTANT DO NOT SKIP THIS: Old Values are overwritten so if something needs to be a…
Update ticket
hubspot.update_ticket
Updates an existing ticket’s properties
Requires Confirmation: Yes
Parameters:
ticketId(TEXT, Required): The HubSpot ticket ID to updateproperties(OBJECT, Required): Object of properties to update. Common properties: - subject: Ticket title - content: Ticket description - hs_pipeline_stage: Stage ID - hs_ticket_priority: LOW, MEDIUM, HIGH - hubspot_owner_id: Owner ID Example: {“subject”:“Updated title”,“hs_ticket_priority”:“HIGH”}
Triggers
Contact added to list
hubspot.contact_added_to_list
Triggers when a contact is added to a specific HubSpot list
Parameters:
listId(TEXT, Required): The HubSpot list ILS ID. Find this in HubSpot: Contacts > Lists > click list > Details panel shows ILS List ID. Also accepts full list URL.limit(NUMBER, Optional): Maximum number of contacts to fetch per poll (1-250). Default 100
New deal
hubspot.new_deal
Triggers when a new deal is created in HubSpot
Parameters:
limit(NUMBER, Optional): Maximum number of recent deals to fetch per poll (1-100). Default 10ownerId(TEXT, Optional): Filter to deals owned by a specific HubSpot owner id. Leave empty to get all.
New form submission
hubspot.new_form_submission
Triggers when a form is submitted in HubSpot
Parameters:
formId(TEXT, Required): The HubSpot form ID (GUID). Find this in HubSpot: Marketing > Forms > click form > Form ID in URL or settings. Also accepts full form URL.limit(NUMBER, Optional): Maximum number of submissions to fetch per poll (1-50). Default 20
New note
hubspot.new_note
Triggers when a new note is created in HubSpot
Parameters:
limit(NUMBER, Optional): Maximum number of recent notes to fetch per poll (1-100). Default 10ownerId(TEXT, Optional): Filter to notes owned by a specific HubSpot owner id. Leave empty to get all.