---
title: "Connect Google Drive and HubSpot - APIANT.ai"
description: "When \"Comment Added (Docs/Sheets/Slides)\" fires in Google Drive, your agent runs \"Create a task engagement\" in HubSpot."
canonical: "https://apiant.ai/connect/google-drive-to-hubspot"
---

# Connect Google Drive and HubSpot

When **Comment Added (Docs/Sheets/Slides)** fires in [Google Drive](https://apiant.ai/connections/google-drive), your agent runs **Create a task engagement** in [HubSpot](https://apiant.ai/connections/hubspot), or **Deal stage changed** in HubSpot to **Copy File** in Google Drive. Describe the whole flow and it is built, tested on every scenario and kept running.

Google Drive **7** triggers Google Drive **85** actions HubSpot **29** triggers HubSpot **137** actions

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

## What do you want Google Drive and HubSpot to do together?

Give your AI client this address.

`https://mcp.apiant.ai`

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. 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)](https://apiant.ai/docs/mcp/claude-code)

### 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)](https://apiant.ai/docs/mcp)

### 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)](https://apiant.ai/docs/mcp)

### Zed

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

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### 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)](https://apiant.ai/docs/mcp)

### 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)](https://apiant.ai/docs/mcp)

Connecting Google Drive and HubSpot keeps the documents a deal produces next to the record they belong to. A new deal in HubSpot can spin up its folder or template copy in Drive, and a file or comment in Drive can land as a task or note on the right contact or deal. Both sides stay readable to sales and support without manual copying.

Example flows

## What Google Drive and HubSpot can do together

### From Google Drive to HubSpot

- When **Comment Added (Docs/Sheets/Slides)** in Google Drive then **Create a task engagement** in HubSpot
- When **File Created** in Google Drive then **Add contact** in HubSpot

### From HubSpot to Google Drive

- When **Deal stage changed** in HubSpot then **Copy File** in Google Drive
- When **New deal** in HubSpot then **Create File From Text** in Google Drive

Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.

Everything your agent can do with Google Drive and HubSpot

## Triggers and actions 36 triggers · 222 actions

- Trigger

**Comment Added (Docs/Sheets/Slides)**

Triggers when a new comment is added to Google Docs, Sheets, or Slides.

- Trigger

**File Created**

Triggers when a new file is created in Google Drive.

- Trigger

**File Deleted or Trashed**

Triggers when a file is moved to trash or permanently deleted in Drive.

- Trigger

**File Shared (Permissions Added)**

Triggers when new sharing permissions are granted to a file or folder. Uses Drive's `changes.list` endpoint with inline `permissions` in the `fields` mask so each change carries the file's current permission set provider-atomically. We diff that against `seen_permission_keys` to identify newly added grants. Drive page tokens are the primary cursor; if Drive rejects a stored token, the trigger raises `PollingTriggerError` without clearing state rather than silently re-baselining and dropping events. Limitation: truly ephemeral permissions (added and revoked between two polls without any other file modification in between) are not detected. Drive Activity API would catch those but requires an additional OAuth scope and a different payload contract.

- Trigger

**File Updated**

Triggers when a file's metadata or content changes in Google Drive.

- Trigger

**Google Drive Changes**

Triggers when changes are detected in a Google Drive.

- Trigger

**New File Matching Query**

Triggers when a new Google Drive file matches a provided query. This is the legacy query-centric trigger: it preserves Drive API query config such as ``corpora`` / ``driveId`` aliases and emits the historical ``file_matching_query`` event type. ``FileCreatedTrigger`` covers the broader "new file" case and emits ``file_created``.

- Action

**Add File Sharing Preference**

Modifies sharing permissions for an existing google drive file, granting a specified role to a user, group, domain, or 'anyone'.

- Action

**Add Parent**

Tool to add a parent folder for a file using Google Drive API v2. Use when you need to add a file to an additional folder.

- Action

**Add Property**

Tool to add a property to a file, or update it if it already exists (v2 API). Use when you need to attach custom key-value metadata to a Google Drive file.

- Action

**Batch Get Spreadsheet Values**

Read multiple explicit ranges from one Google Spreadsheet in one request.

- Action

**Batch Update Spreadsheet Values**

Write values to multiple Google Sheets ranges in one batch request.

- Action

**Clear Spreadsheet Values**

Permanently clear values from one range while preserving formatting, notes, and validation.

- Action

**Copy File**

Duplicates an existing file in google drive, identified by its `file id`.

- Action

**Copy File Advanced**

Creates a copy of a file and applies any requested updates with patch semantics. Use when you need to duplicate a file with advanced options like label inclusion, visibility settings, or custom metadata.

- Action

**Create Comment**

Tool to create a comment on a file. use when you need to add a new comment to a specific file in google drive.

- Action

**Create File**

Creates a new file or folder with metadata. use to create empty files or folders, or files with content by providing it in the request body (though this action primarily focuses on metadata creation).

- Action

**Create File From Text**

Creates a new file in google drive from provided text content (up to 10mb), supporting various formats including automatic conversion to google workspace types.

- Action

**Create Folder**

Creates a new folder in google drive, optionally within a parent folder specified by its id or name; if a parent name is provided but not found, the action will fail.

- Action

**Create Permission**

Tool to create a permission for a file or shared drive. Use when you need to share a file or folder with users, groups, domains, or make it publicly accessible. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied.

- Action

**Create Permissions Batch**

Creates multiple permissions for files or shared drives in a single batch request. Use this action when you need to share multiple files with users, or share a single file with multiple users or groups simultaneously. Each permission in the batch can target a different file and specify different access levels. Batch operations are more efficient than creating permissions individually, with a maximum of 100 permissions per batch.

- Action

**Create Reply**

Tool to create a reply to a comment in google drive. use when you need to respond to an existing comment on a file.

- Action

**Create Shortcut To File**

Tool to create a shortcut to a file or folder in google drive. use when you need to link to an existing drive item from another location without duplicating it.

- Action

**Delete Child**

Tool to remove a child from a folder using Google Drive API v2. Use when you need to remove a file from a specific folder.

- Action

**Delete Comment**

Deletes a comment from a file. use when you need to remove a specific comment from a google drive file.

- Action

**Delete Parent**

Tool to remove a parent from a file using Google Drive API v2. Use when you need to remove a file from a specific folder.

- Action

**Delete Permission**

Deletes a permission from a file by permission id. use when you need to revoke access for a specific user or group from a file.

- Action

**Delete Property**

Tool to delete a property from a file using Google Drive API v2. Use when you need to remove custom key-value metadata from a file.

- Action

**Delete Reply**

Tool to delete a specific reply by reply id. use when you need to remove a reply from a comment on a file.

- Action

**Delete Revision**

Tool to permanently delete a file revision. Use when you need to remove a specific version of a binary file (images, videos, etc.). Cannot delete revisions for Google Docs/Sheets or the last remaining revision.

- Action

**Download File**

Downloads a file from google drive by its id. for google workspace documents (docs, sheets, slides), optionally exports to a specified `mime type`. for other file types, downloads in their native format regardless of mime type.

- Action

**Download File Operation**

Tool to download file content using long-running operations. Use when you need to download Google Vids files or export Google Workspace documents as part of a long-running operation. Operations are valid for 24 hours from creation. Returns a response containing `downloaded_file_content.s3url` — a short-lived S3 URL; fetch the actual file bytes from that URL promptly after the call.

- Action

**Download File Revision**

Download the stored bytes of one blob-file revision. This action does not export Google Docs, Sheets, Slides, or other Workspace revisions. Use GOOGLEDRIVE_GET_REVISION to retrieve a Workspace revision's exportLinks, then download the selected export URL separately.

- Action

**Edit File**

Updates an existing google drive file by overwriting its entire content with new text (max 10mb).

- Action

**Empty Trash**

Tool to permanently delete all of the user's trashed files. use when you want to empty the trash in google drive.

- Action

**Export Google Workspace File**

Exports a Google Workspace document to the requested MIME type and returns exported file content. Use when you need to export Google Docs, Sheets, Slides, Drawings, or Apps Script files to a specific format. Note: The exported content is limited to 10MB by Google Drive API.

- Action

**Find File**

Tool to list or search for files and folders in google drive. use when you need to find specific files based on query criteria or list contents of a drive/folder.

- Action

**Find Folder**

Tool to find a folder in google drive by its name and optionally a parent folder. use when you need to locate a specific folder to perform further actions like creating files in it or listing its contents.

- Action

**Generate Ids**

Generates a set of file ids which can be provided in create or copy requests. use when you need to pre-allocate ids for new files or copies.

- Action

**Get About**

Tool to retrieve information about the user, the user's drive, and system capabilities. use when you need to check storage quotas, user details, or supported import/export formats.

- Action

**Get App**

Tool to get information about a specific Drive app by ID. Use 'self' as the app ID to get information about the calling app.

- Action

**Get Change**

Tool to get a specific change by ID from Google Drive v2 API. Deprecated: Use changes.getStartPageToken and changes.list to retrieve recent changes instead.

- Action

**Get Changes Start Page Token**

Tool to get the starting pagetoken for listing future changes in google drive. use this when you need to track changes to files and folders.

- Action

**Get Child**

Tool to get a specific child reference for a folder using Drive API v2. Use when you need to verify a specific file exists as a child of a folder.

- Action

**Get Comment**

Tool to get a comment by id. use when you need to retrieve a specific comment from a google drive file and have both the file id and comment id.

- Action

**Get Document**

Retrieve a native Google Docs document's structured content and metadata by ID.

- Action

**Get File Metadata**

Tool to get a file's metadata by id. use when you need to retrieve the metadata for a specific file in google drive.

- Action

**Get File Property**

Tool to get a property by its key using Google Drive API v2. Use when you need to retrieve a specific custom property attached to a file.

- Action

**Get Form**

Retrieve a Google Form's definition, questions, settings, and publishing state by ID.

- Action

**Get Parent**

Tool to get a specific parent reference for a file using Drive API v2. Use when you need to retrieve information about a specific parent folder of a file.

- Action

**Get Permission**

Gets a permission by id. use this tool to retrieve a specific permission for a file or shared drive.

- Action

**Get Permission Id For Email**

Tool to get the permission ID for an email address using the Drive API v2. Use when you need to convert an email address to its corresponding permission ID.

- Action

**Get Presentation**

Retrieve a Google Slides presentation and its complete page structures by ID.

- Action

**Get Presentation Page Thumbnail**

Generate one short-lived page thumbnail URL using an expensive Slides quota read.

- Action

**Get Reply**

Tool to get a specific reply to a comment on a file. use when you need to retrieve the details of a particular reply.

- Action

**Get Revision**

Tool to get a specific revision's metadata by revision id. use when you need to retrieve information about a particular version of a file.

- Action

**Get Spreadsheet**

Retrieve a Google Spreadsheet's structure, metadata, and selected grid data.

- Action

**Get Spreadsheet Values**

Read values from one range in a Google Spreadsheet.

- Action

**Google Drive Delete Folder Or File Action**

Tool to delete a file or folder in google drive. use when you need to permanently remove a specific file or folder using its id. note: this action is irreversible.

- Action

**Insert Child**

Tool to insert a file into a folder using Drive API v2. Use when you need to add an existing file to a folder.

- Action

**List Changes**

Tool to list the changes for a user or shared drive. use when you need to track modifications to files and folders, such as creations, deletions, or permission changes. this action requires a `pagetoken` which can be initially obtained using the `get changes start page token` action or from a previous `list changes` response.

- Action

**List Children V2**

Tool to list a folder's children using Google Drive API v2. Use when you need to retrieve all files and folders within a specific folder.

- Action

**List Comments**

Tool to list all comments for a file in google drive. use when you need to retrieve comments associated with a specific file.

- Action

**List File Labels**

Tool to list the labels on a file. use when you need to retrieve all labels associated with a specific file in google drive.

- Action

**List File Properties**

Tool to list a file's properties in Google Drive API v2. Use when you need to retrieve custom properties (key-value pairs) attached to a file.

- Action

**List Files**

Tool to list a user's files and folders in google drive. use this to search or browse for files and folders based on various criteria.

- Action

**List Form Responses**

Return one page of submissions for a Google Form.

- Action

**List Permissions**

Tool to list a file's permissions. use when you need to retrieve all permissions associated with a specific file or shared drive.

- Action

**List Replies**

Tool to list replies to a comment in Google Drive. Use this when you need to retrieve all replies associated with a specific comment on a file.

- Action

**List Replies To Comment**

Tool to list replies to a comment in google drive. use this when you need to retrieve all replies associated with a specific comment on a file.

- Action

**List Revisions**

Tool to list a file's revisions. use when you need to retrieve the revision history of a specific file in google drive.

- Action

**List Shared Drives**

Tool to list the user's shared drives. use when you need to get a list of all shared drives accessible to the authenticated user.

- Action

**Move File**

Tool to move a file from one folder to another in google drive. use when you need to reorganize files by changing their parent folder(s).

- Action

**Patch Permission**

Tool to update a permission using patch semantics. Use when you need to modify specific fields of an existing permission without affecting other fields. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied.

- Action

**Patch Property**

Tool to update a property on a file using PATCH semantics (v2 API). Use when you need to partially update custom key-value metadata attached to a Google Drive file.

- Action

**Read Spreadsheet Values**

Read values from one or more ranges in a Google spreadsheet.

- Action

**Resumable Upload**

Tool to start and complete a Google Drive resumable upload session. Use for files larger than ~5 MB to avoid timeouts or size-limit failures. HTTP 308 means continue the session from the correct byte offset; HTTP 410 means the session expired and a full restart with a new session is required.

- Action

**Stop Watch Channel**

Tool to stop watching resources through a specified channel. use this when you want to stop receiving notifications for a previously established watch.

- Action

**Trash File**

Tool to move a file or folder to trash (soft delete). Use when you need to delete a file but want to allow recovery via UNTRASH_FILE. This action is distinct from permanent deletion and provides a safer cleanup workflow.

- Action

**Update Comment**

Tool to update an existing comment on a google drive file. use when you need to change the content or status (e.g., resolve) of a comment.

- Action

**Update File Metadata Patch**

Tool to update file metadata using the Drive API v2 PATCH method. Use when you need to modify file properties like title, description, or labels using patch semantics.

- Action

**Update File Property**

Tool to update a property on a file using Google Drive API v2. Use when you need to modify an existing custom property attached to a file.

- Action

**Update File Put**

Updates file metadata. uses patch semantics (partial update) as per google drive api v3. use this tool to modify attributes of an existing file like its name, description, or parent folders. note: this action currently supports metadata updates only.

- Action

**Update File Revision Metadata**

Updates metadata of a file revision (e.g., keepforever, publish). use this tool to modify the metadata of a specific revision of a file in google drive.

- Action

**Update Permission**

Tool to update a permission with patch semantics. use when you need to modify an existing permission for a file or shared drive.

- Action

**Update Reply**

Tool to update a reply to a comment on a google drive file. use when you need to modify the content of an existing reply.

- Action

**Update Spreadsheet Values**

Write values to one exact Google Sheets range.

- Action

**Upload From Url**

Tool to fetch a file from a provided URL server-side and upload it into Google Drive. Use when you need to reliably persist externally hosted files into Drive without client-side downloads or temporary storage.

- Action

**Upload Update File**

Tool to update file content in Google Drive by uploading new binary content. Use when you need to replace the contents of an existing file with new file data.

- Action

**Watch Changes**

Tool to subscribe to changes for a user or shared drive in google drive. use when you need to monitor a google drive for modifications and receive notifications at a specified webhook url.

- Action

**Watch File**

Tool to subscribe to push notifications for changes to a specific file. Use when you need to monitor a file for modifications and receive real-time notifications at a webhook URL.

- Action

**Write Spreadsheet Values**

Replace values in one range of a Google spreadsheet.

- 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.

## Each app on its own

- [ **Google Drive** Google Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices...](https://apiant.ai/connections/google-drive)
- [ **HubSpot** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connections/hubspot)

Reviews

## What our customers say

## More from Google Drive

- [ **Google Drive to Salesforce** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/google-drive-to-salesforce)
- [ **Google Drive to Google Sheets** Google Sheets](https://apiant.ai/connect/google-drive-to-google-sheets)
- [ **Google Drive to Gmail** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/google-drive-to-gmail)
- [ **Google Drive to Google Calendar** Google Calendar is a time management tool providing scheduling features, event reminders, and integration...](https://apiant.ai/connect/google-drive-to-google-calendar)
- [ **Google Drive to Mailchimp** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/google-drive-to-mailchimp)
- [ **Google Drive to Stripe** Stripe is a payment processing platform for online businesses.](https://apiant.ai/connect/google-drive-to-stripe)

## More into HubSpot

- [ **Slack to HubSpot** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/slack-to-hubspot)
- [ **Gmail to HubSpot** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/gmail-to-hubspot)
- [ **Google Calendar to HubSpot** Google Calendar is a time management tool providing scheduling features, event reminders, and integration...](https://apiant.ai/connect/google-calendar-to-hubspot)
- [ **Mailchimp to HubSpot** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/mailchimp-to-hubspot)
- [ **ActiveCampaign to HubSpot** ActiveCampaign is a marketing automation, email marketing, and CRM platform.](https://apiant.ai/connect/activecampaign-to-hubspot)
- [ **Notion to HubSpot** A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.](https://apiant.ai/connect/notion-to-hubspot)

Questions

## Google Drive and HubSpot, answered

###

### Can a Drive comment end up on the right HubSpot record?

Yes. The Comment Added trigger in Google Drive can start a flow that creates a note engagement in HubSpot, and you choose which contact or deal the note is attached to when the flow is built.

###

### Can HubSpot deal owners get access to the Drive folder automatically?

Yes. After a deal stage change, the flow can look up the owner with Get owner in HubSpot and then use Add File Sharing Preference in Google Drive to grant that owner's email a role on the folder.

###

### What can start an automation from Google Drive?

Any of Google Drive's 7 triggers in the catalog, including Comment Added (Docs/Sheets/Slides), File Created, File Shared (Permissions Added) and File Updated. Describe the moment in plain language and your agent picks the right one.

###

### What can your agent do in HubSpot when something happens in Google Drive?

Any of HubSpot's 137 actions, including Create a note engagement, Create a task engagement, Get owner and Create a blog post. Your agent maps the data both ways and tests every scenario before it ships.

###

### Can it also run from HubSpot to Google Drive?

Yes. When something happens in HubSpot, your agent can act in Google Drive too. This page covers both directions: HubSpot's triggers and Google Drive's actions are listed here as well.

###

### Do I have to build a connector for Google Drive or HubSpot?

No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.

###

### Can my AI client use Google Drive and HubSpot without building an automation?

Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.

###

### 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.
