# HubSpot

ClearFeed has a robust integration with HubSpot that allows agents and responders to create HubSpot tickets from Slack. Currently, HubSpot ticket creation is supported only from Slack channels and is not available in Microsoft Teams.

## Integrate HubSpot

{% hint style="info" %}
You would need to have Super Admin access on HubSpot to authorize the integration
{% endhint %}

1. Head over to the integrations page -> <https://web.clearfeed.app/settings/integrations>.
2. Connect with HubSpot integration.
3. Follow the on-screen steps to authorize the integration as shown below.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-143ea4b190076a2e00191e6f0d1c6aa6551164e0%2Fimage%20(4).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

#### **Disconnecting HubSpot integration from ClearFeed**

If you want to disconnect the current integration to the HubSpot account from ClearFeed, go to <https://web.clearfeed.app/settings/integrations> -> HubSpot -> click on `Disconnect`.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-57f3690a6957153281b8c476a397c8af5b3037ac%2Fimage%20(6)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Enable Ticketing

1. Go to the relevant Collection in the ClearFeed web app
2. Click on **Settings** and then choose **Ticketing Settings**
3. Choose **HubSpot** as the Ticketing Integration
4. Choose the trigger mode (Emoji/Automatic)
   1. If it is an emoji-based creation, choose the emoji that should trigger ticket creation (the default is :ticket: emoji).
5. **Ask for Requestor Email:** Enable this checkbox to associate a separate requestor email for tickets initiated by responders.

{% hint style="info" %}
**Note:**

* This feature is helpful for agents filing tickets on behalf of requestors (customers or internal users). It allows them to associate the ticket with the requestor's email address instead of their own.
* When this setting is enabled, users will always be prompted to provide a requester email regardless of whether a default email is configured for Requestor Email.
  {% endhint %}

6. Click on the ⚙️ icon to open mandatory **Additional Settings**
   1. **Pipeline:** Select the Pipeline in HubSpot to which the tickets are filed.
   2. **Ticket Status:** Select the initial status of the ticket filed using ClearFeed.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-62dd0cea6689979b18ba66a750c8941c578c419d%2Fimage%20(5).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Create Tickets

### Create Tickets Manually (using Emoji)

<details>

<summary>Using Emoji</summary>

* A conversation is initiated on the request channel
* React to the first message on the thread using the :ticket: emoji.
* A HubSpot ticket is created for the thread.

</details>

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-c7b0dee82966f7e79e43505a1404ace3b9bd931a%2Fimage%20(6).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Create Tickets Automatically

<details>

<summary>Automatic Ticket Creation</summary>

1. Every new conversation (Slack thread) that is initiated on the request channel gets converted into a HubSpot ticket automatically.
2. As soon as the ticket conversation occurs, ClearFeed posts a message on the Slack thread sharing the HubSpot ticket details.

</details>

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-399f322917fe0f0403be086f610f0eb0783ef21d%2Fimage%20(7).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Create from Triage Channel

<details>

<summary>Creating from Triage channel</summary>

1. For any request in the triage channel, click on the `More Actions` button.
2. A dialog box will pop up. Select the `File a HubSpot ticket` option and proceed.
3. This successfully converts the request into a HubSpot ticket.

</details>

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-9e63c42445fa80ff7745058de83286c7e1cd611e%2Fimage%20(8).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Functionalities

* Replies on the Slack thread are synced to the HubSpot Ticket.
* The corresponding request channel thread on Slack now displays the Title, ID, URL, and Status of the HubSpot ticket.
* Status changes from HubSpot are reflected on Slack.
* Public comments from the triage channel are also synced back to the HubSpot ticket.
* Status change updates are posted on the thread when the HubSpot ticket is moved to Solved status.

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p><strong>Auto-assign to First Responder for ClearFeed Requests and HubSpot Tickets:</strong> This feature automatically assigns both the ClearFeed request and its linked HubSpot ticket to the first team member who responds in the Slack thread. Learn how to configure it <a href="../../clearfeed-helpdesk/assignment-rules#auto-assign-to-first-responder-for-clearfeed-requests-and-external-tickets">here.</a> </p></div>

## HubSpot Bidirectional Message Sync

ClearFeed supports two-way syncing of messages between HubSpot and Slack using HubSpot’s Helpdesk by default for backward sync

With this feature:

* Messages sent from ClearFeed via Slack can appear inside HubSpot conversations.
* Replies made in HubSpot are automatically synced back into Slack threads.
* Customers and support teams get a single, continuous conversation, no matter which tool they use.

#### Message Flow

**From Slack to HubSpot**

* New ticket conversations or replies in Slack/Teams are sent into HubSpot.
* A HubSpot conversation thread is created and linked to the ticket.
* Any attachments added will also be added in the conversation
* For users already in HubSpot (email matches), the full contact details are shown.
  * We sync the username and email from Slack to HubSpot. HubSpot then maps these details to its contacts:
  * For users not in HubSpot, only the email is displayed.

**From HubSpot to Slack**

* Replies made in HubSpot conversation associated with the ticket are sent back to the corresponding Slack thread
* The original request/ticket in ClearFeed is updated automatically.
* Attachments added in HubSpot will also be available as part of thread in Slack and ClearFeed request

## Emoji Rules for HubSpot <a href="#emoji-rules-for-hubspot" id="emoji-rules-for-hubspot"></a>

ClearFeed allows you to use emoji reactions on Slack messages to assign and resolve HubSpot tickets directly from Slack — using both standard and custom emoji configurations.

**Setting Up Emoji Rules**

To enable and configure emoji rules:

* Open your **Collection's Settings**.
* Expand the **Emoji Rules** section.
* Enable the rules you want to use.
* Click the **edit icon** to customize the emoji for each action.
* To use a custom emoji, click **Add Custom Emoji** and select your desired emoji.

Under **Apply emoji rules for**, choose one of:

* **External ticketing platform**
* **ClearFeed requests & external ticketing platform**

**Behavior When Emoji Rules Are Applied**

Once configured, emoji reactions can trigger HubSpot ticket updates:

* Reacting with 👀 (or your chosen "Assign" emoji) will:
  * Assign the HubSpot ticket to the reacting user
  * Move the issue from **To-do** (or the default initial state) to **In Progress**
* Reacting with ✅ (or your chosen "Solved" emoji) will:
  * Move the HubSpot ticket to **Closed**

**Who Can Trigger Emoji-Based HubSpot Actions**

<table><thead><tr><th width="260">Who reacts with emoji</th><th>Behavior</th></tr></thead><tbody><tr><td>Responder / Non-Responder</td><td>Can assign and resolve HubSpot tickets using emoji reactions, as configured.</td></tr><tr><td>Whitelisted Bots</td><td>Can only mark HubSpot tickets as <strong>solved</strong> via emoji. <strong>Assign</strong> emoji will not work.</td></tr><tr><td>Non-whitelisted Bots</td><td>Reactions will <strong>not</strong> trigger any HubSpot updates.</td></tr></tbody></table>

{% hint style="info" %}
**Notes:**

* Emoji rules work only when the emojis is applied on the request from Request Channel and by one of the Responders
* Urgent Emoji is not supported for HubSpot.
  {% endhint %}

## Screens

When requests are turned into HubSpot tickets, details are sent back to the requester in a designated ticket message block on the request channel.

{% hint style="info" %}

* The screens section lets you completely disable the ticket message by toggling off Screens. This would mean that whenever a HubSpot ticket is created, users will not see any confirmation message and ticket details.
* If you want to customize the title of the alert message shared with requesters in the request channel, please reach out to our Support team via Slack or email us at <support@clearfeed.ai>
  {% endhint %}

To configure the ticket message for HubSpot ticketing, follow the steps given below:

1. Head over to the [Forms ](https://web.clearfeed.app/objects)section on the ClearFeed web application
2. Under the ticketing drop-down, select `HubSpot Ticketing`.
3. Select `Screens` from the tabs mentioned under HubSpot Ticketing.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-9b658d60cb27cb8ac5b40f0fb2b0278347cc70f9%2Fimage%20(260).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Fields <a href="#visibility-of-fields-on-the-ticket-message-block" id="visibility-of-fields-on-the-ticket-message-block"></a>

* **Status** - By default, the Status of the HubSpot ticket is always shown to the requester. This cannot be configured to be hidden.
* **Title**- The title of the HubSpot Ticket can be shown to the requester using this field.
* **Ticket URL -** Allows you to show or hide the HubSpot ticket URL to the requestor.
  * Showing the URL is advisable if you have the Customer Portal enabled for your customers.
* **Form Name -** Name of the Form used to create the ticket.
  * Note: Form name appears only if there is more than one form in the account.
* **Fields populated by Create Form -** Only non-empty, non-hidden fields, marked as editable by 'All' in the 'Create Form', will be displayed in the message.
* **Fields populated by Edit Form -** Only non-empty, non-hidden fields, marked as editable by 'All' in the 'Edit Form', will be displayed in the message.
* **Priority** - By default, the Priority is hidden. If enabled, the ticket block will show the HubSpot Priority on Slack.
* **Assignee -** By default, the Assignee is hidden. If enabled, the ticket block will show the HubSpot Assignee on Slack.

### Actions <a href="#actions-available-from-the-ticket-message-block" id="actions-available-from-the-ticket-message-block"></a>

1. ***Mark As Solved*** button: You can choose to expose the `Mark as Solved` button which allows responders/requesters to solve a ticket right from the request channel. Check the option to display the `Mark as Solved` button on the ticket message block.

   **Permissions:** `All` or `Responder`.

   1. `All` - Allows access to the `Mark as Solved` button to both the requester and responder
   2. `Responder` - Only agents/responders will be able to use the `Mark as Solved` action to resolve tickets.

      <figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-a14f0f611f04666ffaa8c4ae8c7db53b98545163%2Fimage%20(267).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>
2. ***Unlink Ticket*** button: This button allows users to unlink a ticket from its associated request in the Request Channel. By default, it is visible only to responders in the channel. Check the option to display the `Unlink Ticket` button on the ticket message block.

   **Permissions:** `All` or `Responder`.

   1. `All` - Allows access to the `Unlink Ticket` button to both the requester and responder
   2. `Responder` - Only agents/responders will be able to use the `Unlink Ticket` action to unlink tickets.

   <figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-8f328ef12d886ba93866b0ee01a3eeb162956f7c%2Fimage%20(268).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Settings

### Sync Settings

Sync settings allow you to choose whether messages are synced bidirectionally or in a single direction. Additionally, you can decide if updates to the linked ticket's status are shared in the Slack thread.

#### For All Tickets

To configure common sync settings for all new tickets - follow the steps below:

{% hint style="info" %}
If your account has been configured with Custom Channels to support bi-directional sync, you will be shown an option to enable the 2 way sync between Slack and HubSpot
{% endhint %}

1. Access Sync Settings by navigating to [**Forms**](https://web.clearfeed.app/objects/hubspot)
2. Choose your [**Message Sync Mode**](#message-sync-mode)
3. Select whether status updates are shared in the [**Status Sync Mode**](#status-sync-mode) setting

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-2a78867a8a5cf10f4caa15302af7f62bd9e77cba%2Fimage%20(7)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

#### For Individual Tickets

You can also configure different sync settings for individual tickets. Once a ticket is created from Slack, access the three-dot menu (shown in the illustration below) and configure your settings.

Only Responders can configure Sync Settings for individual tickets from the request channel in Slack

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-ecaed206490a5205710505d1e1968573886b6987%2Fimage%20(9).gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

<details>

<summary>Message Sync Mode</summary>

**Determines how messages are synced between Slack and HubSpot.**

* **2-way sync**: Replies in Slack are posted to HubSpot, and replies in HubSpot are posted back to Slack.
* **Only forward sync from Slack thread to HubSpot:** Replies from Slack are posted on HubSpot but comments from HubSpot are not posted back on Slack.
* **Only backward sync from HubSpot to Slack**: Replies in HubSpot are posted to Slack, but Slack replies are not synced to HubSpot.
* **No sync**: No replies are synced between Slack and HubSpot.

**Note:** You’ll see options to enable the 2-way sync between Slack and HubSpot and backward sync from HubSpot to Slack only if your account uses **Custom Channels** for [bi-directional sync](#hubspot-bidirectional-message-sync).

</details>

<details>

<summary>Status Sync Mode</summary>

Determine whether status updates are shared on the request channel thread on Slack or not.

Updates are only delivered when the status is changed to "Solved" or moved to "Open" from "Solved"

* **Sync key status changes from HubSpot to Slack thread:** Whenever the ticket is "Solved" or moved to "Open" from "Solved - the updates are shared on Slack.
* **No sync of status changes from HubSpot to the Slack thread:** No status updates are synced to Slack.

</details>

### AI-Summarization Setting

You can access these settings on the **Settings** tab [here](https://web.clearfeed.app/objects/zendesk).

If enabled, the Description of the ticket will include a summary of the thread messages followed by the messages themselves. If disabled, only the messages will be included.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-955d7c576f919c28b1ec987a6720aec3710112d0%2Fimage%20(38).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## HubSpot Forms

{% hint style="warning" %}
ClearFeed currently supports only specific HubSpot field types: Checkbox, multi select checkbox, Date, Number, Radio, Select, Text, Text Area (Multi-line text) ,and Phone Number. Additional field types will soon be supported.
{% endhint %}

Explore further to learn how to set up and work with HubSpot Ticket Forms:

{% content-ref url="hubspot/forms" %}
[forms](https://docs.clearfeed.ai/clearfeed-help-center/integrations/hubspot/forms)
{% endcontent-ref %}

### Creating Tickets with Forms

* Once the forms are set up, users will see a **File Ticket** button. Clicking this button will prompt users to complete ticket creation.
* If multiple forms are set up, a drop-down will appear asking the user to choose which form to fill for the particular ticket.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-6575d27ec32fa5b8f321872848291b4ef3f337af%2Fimage%20(211)%20(1).png?alt=media" alt="" width="515"><figcaption><p>Creating Tickets with Forms enabled</p></figcaption></figure>

## FAQs

1. **Why don’t I see HubSpot replies in Slack/Teams?**\
   **Answer:**
   * Check if your HubSpot plan supports Custom Channels (Professional or higher).
   * Ensure the integration has the conversations.custom\_channel scope enabled.
2. **What happens if my plan doesn’t support Custom Channels?**\
   **Answer:** You’ll continue using the existing one-way sync. Tickets and messages from ClearFeed still appear in HubSpot, but replies in HubSpot will not sync back.
3. **Are there any scenarios when we cannot unlink a ticket/task from Slack?**\
   **Answer:** Yes - if the corresponding ClearFeed Request/Ticket is in a Solved or Closed state - tasks cannot be unlinked.
