AppsPricingBlogTry it
Smartsheet logo
HubSpot logo

Connect Smartsheet to HubSpot

Use 4 documented Smartsheet triggers to run 24 documented HubSpot actions.

4 source triggers
24 target actions
Reverse direction supported

Why Connect Smartsheet & HubSpot?

Start with a Smartsheet event

Choose from 4 documented triggers, including New Comment Added (Instant), New Row Added (Instant), New Row Deleted (Instant).

Run a HubSpot action

Send the event into one of 24 documented actions, such as Add Comment, Add Contact to List, Add Note to Contact.

Map and review the workflow

Choose the fields and conditions for the workflow, then test the result before activation.

Available Triggers & Actions

Smartsheet logo

Smartsheet

Triggers (4)

New Comment Added (Instant)

Emit new event when a comment is added in a sheet.

webhook
New Row Added (Instant)

Emit new event when a row is added to a sheet.

webhook
New Row Deleted (Instant)

Emit new event when a row is deleted from a sheet.

webhook
New Row Updated (Instant)

Emit new event when a row is updated in a sheet.

webhook

Actions (24)

Add Column

Add a new column to a sheet. Specify the column title, type, and optionally the position and picklist options. For PICKLIST columns, provide the options array with valid values. Use **List Columns** to see existing columns before adding. See the documentation

Add Row to Sheet

Add one or more rows to a sheet. Accepts column NAMES as keys — resolves to column IDs internally. Call **Get Sheet** or **List Columns** first to learn column names. Pass rows as a JSON array of objects mapping column names to values: [{"Task": "Review doc", "Status": "Open"}]. For a single row, pass a one-element array. See the documentation

Copy Rows

Copy one or more rows from a source sheet to a destination sheet. The rows remain in the source sheet and are duplicated in the destination. Cell values, formatting, and attachments are copied. The destination sheet must have compatible columns. Use **Get Sheet** to find row IDs in the source sheet. To move rows instead (removing them from the source), use **Move Rows**. See the documentation

Copy Sheet

Copy an existing sheet to a new location. Creates a complete duplicate including all rows, columns, formatting, and attachments. Specify a destination workspace or folder, or omit both to copy to the user's home (Sheets folder). Returns the new sheet's ID and permalink. Use **List Sheets** to find the source sheet ID. To move a sheet instead (removing it from the original location), use **Move Sheet**. See the documentation

Create Sheet

Create a new blank sheet with column definitions in a workspace or folder. Columns array defines the schema — each column needs a title and type. Supported column types: TEXT_NUMBER, DATE, DATETIME, CONTACT_LIST, CHECKBOX, PICKLIST, DURATION, PREDECESSOR, ABSTRACT_DATETIME. For PICKLIST columns, include an options array with the valid values. You must provide either a Workspace ID or Folder ID — the home-level create endpoint is deprecated. Use **List Sheets** to verify the sheet was created. See the documentation

Delete Column

Permanently delete a column from a sheet. WARNING: This is irreversible — all cell data in the column is permanently destroyed. Use **List Columns** to find the column ID before deleting. Consider using **Get Sheet** to review the column's data before deletion. See the documentation

Delete Rows

Delete one or more rows from a sheet by row ID. This is permanent and cannot be undone. Use **Get Sheet** or **Search** to find row IDs first. See the documentation

Delete Sheet

Permanently delete a sheet. This is irreversible — all data, rows, and columns are destroyed. Use **List Sheets** to find the sheet ID first. See the documentation

Email Sheet

Send a sheet as an email attachment to one or more recipients. The sheet can be sent as PDF, Excel, or PDF Gantt format. Use **List Sheets** to find the sheet ID. See the documentation

Get Current User

Get the authenticated user's identity — returns user ID, email, first/last name, and account details. Use this when the user says 'my sheets' or 'my account' to identify the owner. See the documentation

Get Row

Retrieve a single row from a sheet by row ID, with cell values keyed by column name instead of column ID. Returns a human-readable object like {"Species": "Velociraptor", "Status": "Monitoring"} plus row metadata. When a cell has a displayValue (formatted date, contact name), that is returned instead of the raw value. Use **Get Sheet** or **Search** to find row IDs. To update a row after reading it, use **Update Row**. See the documentation

Get Sheet

Get a sheet's full structure: column definitions (name, type, options, ID), all rows with cell values, and sheet metadata. This is the primary schema discovery tool — call it BEFORE **Add Row to Sheet** or **Update Row** to learn column names, types, and IDs. Returns rows with cell values keyed by column name for readability. For a lightweight column-only view, use **List Columns** instead. See the documentation

Import Sheet

Import a CSV or XLSX file as a new Smartsheet sheet in a workspace or folder. The file's first row becomes column headers by default (adjust with Header Row Index). You must provide either a Workspace ID or Folder ID — the home-level import endpoint is deprecated. Supported formats: CSV (.csv) and Excel XLSX (.xlsx). Use **List Sheets** to verify the sheet was created after import. See the documentation

List Columns

List all columns in a sheet, returning each column's ID, title, type, options (for PICKLIST/CONTACT_LIST), validation, and position index. This is lighter-weight than **Get Sheet** when you only need the column schema and not row data. Use this before **Add Row to Sheet** or **Update Row** to discover column names and types. For full sheet data including rows, use **Get Sheet** instead. See the documentation

List Folder Options

Retrieves available folder options from a workspace. See the documentation

List Sheet Options

Retrieves available options for the Sheet field. See the documentation

List Sheets

List all sheets the authenticated user can access, with name, ID, creation/modification dates, owner, and permalink. Use this to find sheet IDs before calling **Get Sheet**, **Add Row to Sheet**, **Update Row**, **Delete Rows**, **Copy Sheet**, or **Move Sheet**. To search sheets by content rather than listing them, use **Search** instead. See the documentation

List Template ID Options

Retrieves available options for the Template ID field.

List Workspace Options

Retrieves available options for the Workspace field using token-based pagination. See the documentation

List Workspace Templates

Lists templates available in your workspaces. Use this to find template IDs for **New Sheet From Template**. See the documentation

Move Rows

Move one or more rows from a source sheet to a destination sheet. WARNING: Rows are permanently removed from the source sheet. Cell values, formatting, and attachments are transferred. The destination sheet must have compatible columns. Use **Get Sheet** to find row IDs in the source sheet. To copy rows instead (keeping them in the source), use **Copy Rows**. See the documentation

Move Sheet

Move a sheet to a different workspace, folder, or home. The sheet is removed from its current location. As of 2025-12-23, destinationType is required. Use **List Sheets** to find the sheet ID. To copy a sheet instead (keeping the original), use **Copy Sheet**. See the documentation

New Sheet From Template

Creates a new sheet from a template. Requires either a workspace or folder destination. Use **List Workspace Templates** to find template IDs. Use **List Workspace Options** to find workspace IDs. Use **List Folder Options** to find folder IDs. See the documentation: Create in folder, Create in workspace

Search

Full-text search across all sheets or within a specific sheet. Returns matching rows, cells, and sheet names with context. To find a sheet by name, use **List Sheets** instead — this tool searches content within sheets. Provide a sheetId to scope the search to a single sheet, or omit it to search globally. See the documentation

HubSpot logo

HubSpot

Triggers (12)

Deleted Blog Posts

Emit new event for each deleted blog post.

polling
New Company Property Change

Emit new event when a specified property is provided or updated on a company. See the documentation

polling
New Contact Added to List

Emit new event when a contact is added to a HubSpot list. See the documentation

polling
New Contact Property Change

Emit new event when a specified property is provided or updated on a contact. See the documentation

polling
New Custom Object Property Change

Emit new event when a specified property is provided or updated on a custom object.

polling
New Deal In Stage

Emit new event for each new deal in a stage.

polling
New Deal Property Change

Emit new event when a specified property is provided or updated on a deal. See the documentation

polling
New Email Event

Emit new event for each new Hubspot email event.

polling
New Email Subscriptions Timeline

Emit new event when a new email timeline subscription is added for the portal.

polling
New Engagement

Emit new event for each new engagement (call, email, meeting, note, postal mail, or task) created. Per-activity docs: Calls Emails Meetings Notes Postal Mail Tasks See the documentation

polling
New Events

Emit new event for each new Hubspot event. Note: Only available for Marketing Hub Enterprise, Sales Hub Enterprise, Service Hub Enterprise, or CMS Hub Enterprise accounts

polling
New Form Submission

Emit new event for each new submission of a form.

polling

Actions (24)

Add Comment

Adds a comment to a thread. See the documentation

Add Contact to List

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

Add Note to Contact

MCP and AI agents: **Prefer this action** when the user wants to **leave a note on a HubSpot contact** using a **contact ID** and note text. Exposes only hubspot, contactId, and noteBody (no engagement-type step, no reloadProps, no dynamic HubSpot schema fields). Do **not** use **Create Engagement** for this workflow. For every writable note property or non-contact associations, use **Create Note** instead. See the documentation

Archive Thread

Archives a thread (soft delete). The thread is hidden from active views but can be restored via the HubSpot UI or by listing archived threads. See the documentation

Batch Create Companies

Create a batch of companies in Hubspot. See the documentation

Batch Create or Update Contact

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

Batch Update Companies

Update a batch of companies in Hubspot. See the documentation

Batch Upsert Companies

Upsert a batch of companies in Hubspot. See the documentation

Clone Marketing Email

Clone a marketing email in HubSpot. See the documentation

Clone Site Page

Clone a site page in Hubspot. See the documentation

Create a New Workflow

Create a new workflow. See the documentation

Create Association

Create an association (link) between two CRM records. For example, associate a contact with a company, a deal with a contact, or a ticket with a company. Common association type IDs: contact→company (1), company→contact (2), deal→contact (3), contact→deal (4), deal→company (5), company→deal (6), ticket→contact (15), contact→ticket (16), ticket→company (26), company→ticket (25). See the documentation

Create Associations

Create associations between objects. See the documentation

Create Blog Post

Creates a new blog post in HubSpot. See the documentation

Create Communication

Create a WhatsApp, LinkedIn, or SMS message. See the documentation

Create Company

Create a company in Hubspot. See the documentation

Create Contact Workflow

Create a contact workflow in Hubspot. See the documentation

Create CRM Object

Create a new CRM record (contact, company, deal, ticket, etc.). Pass property values as a JSON object in the properties parameter. Use **Search Properties** to discover available fields for the object type, **Get Properties** to find valid enum values (e.g. lifecyclestage, dealstage), and **List Pipelines and Stages** to find valid pipeline/stage IDs for deals and tickets. Use **List Owners** to find valid hubspot_owner_id values. See the documentation

Create Custom Object

Create a new custom object in Hubspot. See the documentation

Create Deal

Create a deal in Hubspot. See the documentation

Create Engagement

Create a **task, meeting, email, call, or note** engagement with optional associations. Set **Engagement Type** and pass engagement fields in **Object Properties** (HubSpot property names, e.g. hs_note_body for notes). No reloadProps step and no **CONFIGURE_COMPONENT** requirement: association fields accept raw HubSpot IDs (use **Search CRM** or the Associations API to resolve associationType when needed). For **only** a note on a contact by ID, **Add Note to Contact** (hubspot-add-note-to-contact) is still simpler. See the documentation

Create Form

Create a form in HubSpot. See the documentation

Create Landing Page

Create a landing page in Hubspot. See the documentation

Create Lead

Create a lead in Hubspot. See the documentation

Integration Features

4 documented Smartsheet triggers
24 documented HubSpot actions
Configurable field mapping
Conditional workflow steps
Execution monitoring
A supported HubSpot to Smartsheet direction

Capability Examples

Smartsheet trigger → HubSpot action

Catalog example
SmartsheetSmartsheet

New Comment Added (Instant)

HubSpotHubSpot

Add Comment

HubSpot trigger → Smartsheet action

Reverse direction
HubSpotHubSpot

Deleted Blog Posts

SmartsheetSmartsheet

Add Column

How It Works

1

Connect Apps

Authenticate your Smartsheet and HubSpot accounts

2

Choose a Trigger

Select a documented Smartsheet event

3

Choose an Action

Select the documented HubSpot operation to run

Test and Review

Verify field mapping and provider responses before activation

Frequently Asked Questions

Integration Benefits

Trigger-driven Workflows

Start the supported direction from one of 4 documented Smartsheet triggers.

Automated Actions

Run one of 24 documented HubSpot actions after the selected trigger fires.

Provider Authentication

Review the authentication requirements published by each provider before activating the workflow.

Guided Configuration

Select a documented trigger, choose a target action, and map the fields required by the workflow.

Field Mapping

Map the fields exposed by the selected trigger and action, then review the required provider inputs.

Execution Review

Test the workflow and review provider responses before relying on it in production.

HubSpot logoSmartsheet logo

Reverse Integration Available

Also connect HubSpot to Smartsheet for bidirectional automation

View Integration
Smartsheet logo

All Smartsheet Integrations

Explore all available Smartsheet connections

View All Integrations
HubSpot logo

All HubSpot Integrations

Explore all available HubSpot connections

View All Integrations

Ready to Connect Smartsheet & HubSpot?

Build this supported workflow in Mazaal AI and test it with your own provider accounts.

Get Started Free