# Zendesk

ClearFeed offers a highly configurable bi-directional integration with Zendesk, enabling agents and responders to work on synced tickets between Slack and Zendesk.

Before getting started, ensure that [ClearFeed is integrated with Slack.](https://docs.clearfeed.ai/clearfeed-help-center/getting-started/signing-up-for-clearfeed)

## Integrate Zendesk

{% hint style="info" %}

* The ClearFeed user connecting to Zendesk should have an account on Zendesk and must be using the **same email address** on both platforms.

* The integration can only be authorized by a **Zendesk Admin**.

* The email address used for the integration must exist as a user in both Zendesk and Slack. If you wish to use a shared email or group email (e.g.,<operationsteam@yourcompany.com>) and it does not exist in Slack, you will need to create a Slack account for that email to complete the integration.
  {% endhint %}

* On the ClearFeed web app, navigate to the `Settings` from the nav bar, and then open the [Integrations](https://web.clearfeed.app/settings/integrations) section.

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

* Next, click on the `Connect` button next to Zendesk. This will open a modal.
* Input your Zendesk sub-domain in the modal and click on the `Connect`.

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

* This will redirect you to Zendesk's sign-in page. Fill in your credentials and sign in.

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

* After you sign in, you will be redirected to [ClearFeed](https://web.clearfeed.app/settings/integrations), and your integration will be completed.

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

After you have successfully integrated your Zendesk account with ClearFeed, it is time to set Zendesk as a `Ticketing Integration` for your Collection.

## Enable Ticketing

1. On the ClearFeed web application, open the Collection where you want to enable Ticketing
2. Click on `Settings` tab, and expand the `Ticketing Settings` section.
3. Enable the toggle, and choose the `Zendesk` as the `Ticketing Integration`.
4. Choose the Trigger Mode: **Emoji** (Manual) or **Automatic**
   * **Emoji:** Create tickets when the configured emoji is used on a message.
   * **Automatic:** Create tickets for all new messages on a channel.
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 `Save` to save the integration successfully

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

{% hint style="info" %}
ClearFeed can give you the ability to push private comments from the triage channel as **Internal Comments** on Zendesk. Learn how to enable the same [here](https://docs.clearfeed.ai/clearfeed-help-center/clearfeed-helpdesk/triage-channel-setup).
{% endhint %}

## Create Tickets

### Create Tickets Manually (using Emoji)

<details>

<summary>How to use emoji reaction to manually create a Zendesk ticket?</summary>

1. A conversation is initiated on the request channel.
2. React to the first message on the thread using the :ticket: emoji.
3. A Zendesk ticket is created for the thread. All messages in the thread (along with the attachments) are synced to the ticket.

</details>

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-d3abcaec099f5847a3ca9ff1857d115619e10ffd%2FScreen%20Recording%20-%20May%2016%2C%202024%20(1).gif?alt=media" alt="" width="563"><figcaption><p>Zendesk tickets using Emoji</p></figcaption></figure>

### Create Tickets Automatically

<details>

<summary>How to automatically convert threads into Zendesk tickets?</summary>

1. Every new conversation (Slack thread) that is initiated on the request channel gets converted into a Zendesk ticket automatically.
2. As soon as the ticket conversation occurs, ClearFeed posts a message on the Slack thread sharing the Zendesk 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-ffaa1bfa3f2ef7e28a3b2397e67c15af789ed290%2FScreen%20Recording%20-%20May%2016%2C%202024%20(1)%20(1).gif?alt=media" alt="" width="563"><figcaption><p>Automatic creation of Zendesk tickets</p></figcaption></figure>

### Create from Triage Channel

<details>

<summary>How to file Zendesk tickets from the Triage channel?</summary>

Requests in the Triage channel can be easily converted to Zendesk tickets using the `More Actions` button. Follow the below steps to do so:

1. For any request on the Triage channel, click on the `More Actions` button.
2. This will open a modal. Here, select the `File a Zendesk Ticket` option and proceed.
3. This successfully converts the request into a Zendesk ticket.

The corresponding request channel thread on Slack now displays the `title`, `ID`, and `Status` of the Zendesk ticket.

</details>

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-124103ee82fc5597611162878388820904e87b17%2Fzendesk%20triage.gif?alt=media" alt="" width="563"><figcaption><p>Zendesk tickets from Triage channel</p></figcaption></figure>

## Link to Zendesk Ticket

You can link Slack threads to existing Zendesk tickets.

* Messages are added from the thread to the Zendesk ticket.
* Replies are shared on the Slack thread and vice-versa.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-0c5396399bf9736f70798852a01001631023b7b1%2FLink%20to%20Zendesk-VEED.gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
Each Zendesk ticket can only be linked to one Slack thread at a time. If a ticket is already linked to another thread, it will not appear as an option in the dropdown when attempting to link it to a new thread. To link the ticket to a different thread, you must first unlink it from the current thread.
{% endhint %}

## Functionalities

Once you create a Zendesk ticket from Slack, ClearFeed enables the following:

1. Replies on the Slack thread and the Zendesk ticket are synced bidirectionally.
2. The corresponding request channel thread on Slack now displays the `Title`, `ID`, `URL`, and `Status` of the Zendesk Ticket.
3. Status changes from Zendesk are reflected on Slack
   * We also support showing Zendesk *Custom Statuses* on Slack.
4. ClearFeed adds the following tags to the Zendesk ticket when sync is active: `slack-channel-name`, `clearfeed`, and the name of the form used to create the ticket.
   * The `clearfeed` tag is present on tickets created via ClearFeed and can be safely used in your Zendesk triggers/automations (for example: *"If tag `clearfeed` is present, do not auto-assign"* so that ClearFeed's own assignment rules can run).
   * If the `cf-disabled` tag is present on a Zendesk ticket, ClearFeed–Zendesk sync is disabled for that ticket and the `clearfeed` tag will **not** be added or updated by ClearFeed.
5. Public comments from the triage channel are also synced back to the Zendesk ticket.
6. Internal Comments from the Triage channel are synced back to the Zendesk ticket as Internal Notes.
7. Status change updates are posted on the thread when the Zendesk ticket is moved to `Solved` status.
8. If a **Zendesk ticket is closed** and the linked **Slack thread receives a reply**:
   * ClearFeed will automatically **create a new Follow-up ticket in Zendesk**.
   * The new ticket is created only if:
     * The reply is from a **non-responder** (i.e., not the agent who resolved the request).
     * The message is **non-ignorable** (not system-generated, bot posts, or empty).

{% hint style="success" %}
**Auto-assign to First Responder for ClearFeed Requests and Zendesk Tickets:** This feature automatically assigns both the ClearFeed request and its linked Zendesk ticket to the first team member who responds in the Slack thread. Learn how to configure it [here.](https://docs.clearfeed.ai/clearfeed-help-center/clearfeed-helpdesk/assignment-rules#auto-assign-to-first-responder-for-clearfeed-requests-and-external-tickets)
{% endhint %}

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-ce5bbfabefc8f7d7c13457b7d7ef8d4ab01c4a10%2FBidirectional%20sync%20in%20ZD.gif?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Emoji Rules for Zendesk <a href="#emoji-rules-for-zendesk" id="emoji-rules-for-zendesk"></a>

ClearFeed allows you to use emoji reactions on Slack messages to assign and resolve Zendesk 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 Zendesk ticket updates:

* Reacting with 👀 (or your chosen "Assign" emoji) will:
  * Assign the Zendesk ticket to the reacting user
* Reacting with ✅ (or your chosen "Solved" emoji) will:
  * Move the Zendesk ticket to **Done**

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

<table><thead><tr><th width="234.00006103515625">Who reacts with emoji</th><th>Behavior</th></tr></thead><tbody><tr><td>Responder / Non-Responder</td><td>Can assign and resolve Zendesk Tickets using emoji reactions, as configured.</td></tr><tr><td>Whitelisted Bots</td><td>Can only mark Zendesk 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 Zendesk 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 Zendesk.
  {% endhint %}

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

## Screens

When requests are turned into Zendesk tickets, details are sent back to the requester in a designated ticket message block on the request channel. The screens section lets you customize the ticket message shown to the requester. You can show or hide ticket fields and manage the ticket resolution button.

{% hint style="info" %}

* Screen configuration is **global** for a given Zendesk integration. The fields you choose to show or hide (including Ticket URL, Status, etc.) apply to **all** Slack channels and **all** Zendesk ticket forms; per-form or per-channel screen variations are not supported.
* You can completely disable the ticket message by toggling off Screens. This would mean that whenever a Zendesk ticket is created, users will not see any confirmation message and ticket details.
* The confirmation text posted at the top of the ticket message (ie. "A ticket has been created") is currently **not customizable**.
* 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 Zendesk 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 `Zendesk Ticketing`.
3. Select `Screens` from the tabs mentioned under Zendesk Ticketing.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-d81b4451aed79d4b580de39ce859e604026715b4%2Fimage%20(5)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption><p>Accessing Screen Configuration options for Zendesk</p></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 Zendesk ticket is always shown to the requester. This cannot be configured to be hidden.
  * Note: Custom Zendesk statuses are also supported.
* **Priority** - The priority of the ticket can be shown to the requester using this field. The priority of the ticket will be pulled directly from Zendesk.
* **Assignee -** By default, the Assignee is hidden. If enabled, the ticket block will show the Zendesk Assignee on Slack.
* **Ticket URL -** Allows you to show or hide the Zendesk ticket URL to the requestor.
  * Showing the URL is advisable if you have the Help Center 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.

### Actions

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`.
       * `All` - Allows access to the `Mark as Solved` button to both the requester and responder
       * `Responder` - Only agents/responders will be able to use the `Mark as Solved` action to resolve tickets.
2. ***Edit Ticket*** button: The Edit ticket button will be present on the ticket message by default whenever the Edit action Form is enabled.
   * Disabling a Parent Form (or its underlying *Edit* action form) will disable the editing feature for existing tickets created using it and the `Edit Ticket` button will be hidden from all new tickets created using the Form.

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

     <figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-b96dc9bb2303e16f06162ffe0ebb23ebc2065479%2Fimage%20(3)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>
3. ***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%2FlUrmtXfKNiw7DwzuvasW%2Fimage.png?alt=media&#x26;token=ae80065a-d20c-463e-b5d4-c1f94e77f66c" 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:

1. Go to [Forms](https://web.clearfeed.app/objects/clearfeed) on the web app and then go to Sync Settings
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-4efd5a9457151e5cc5a193433340e69e9ab538e8%2Fimage%20(24)%20(1).png?alt=media" alt="" width="563"><figcaption><p>Zendesk integration sync settings</p></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.

{% hint style="info" %}
Only Responders can configure Sync Settings for individual tickets from the request channel in Slack
{% endhint %}

<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><p>Configuring Sync Settings for a particular ticket in Slack</p></figcaption></figure>

<details>

<summary>Message Sync Mode</summary>

Determines how messages are synced between Slack and Zendesk.

* **2-way sync between Zendesk and Slack thread:** Replies from Slack are posted on Zendesk and comments from Zendesk are synced to Slack.
  * **Only forward sync from Slack thread to Zendesk:** Replies from Slack are posted on Zendesk but comments from Zendesk are not posted back on Slack.
* **Only backward sync from Zendesk to Slack thread:** Only Zendesk comments are posted on Slack and replies from Slack do not go to Zendesk.
* **No sync between Zendesk and Slack thread:** No comments are synced from Slack or Zendesk.

</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 Zendesk 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 Zendesk to the Slack thread:** No status updates are synced to Slack.

</details>

### AI-Driven Status Settings

ClearFeed automatically transitions the Zendesk ticket's status to Pending/Open based on the nature of the requester's reply.

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

* **Re-Open Tickets on All Customer Messages**
  * **If toggled ON:** Every customer message will re-open a ticket.
  * **If toggled OFF:** ClearFeed will not re-open tickets when customers express thanks or satisfaction but will re-open tickets on all other messages.
* **Mark Ticket Pending on Responder Reply**
  * **If Toggled ON:** ClearFeed will move tickets to pending automatically on Responder replies. The only exceptions are when the Responder expresses thanks or makes a promise to act in the future.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-133d23d8d1931e6b8f8e58be608e4fe290450f3e%2Fimage%20(3)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption><p>AI-Driven Status Settings for Zendesk</p></figcaption></figure>

### 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-f503780c37531ce002f2e6a6db6194e5b715cda2%2Fimage%20(4)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

## Disconnect Tickets from Zendesk

After the Support team resolves the issue and the ticket is transferred to another team or the conversation shifts to a different topic, it may be necessary to unlink the Zendesk ticket from the Slack thread. You can do this directly from Zendesk:

1. Open the Zendesk ticket that you want to stop syncing with Slack
2. Go to the `Tags` section
3. Add the following tag -> **cf-disabled**

This ticket will now stop syncing comments and status updates between Zendesk and Slack.

## Zendesk Forms

{% hint style="warning" %}
ClearFeed currently supports only specific Zendesk field types: text, Multi-line, Drop-down, Multi-select, Checkbox, Number, Date, and Attachments. Additional field types will soon be supported.
{% endhint %}

Visit the Forms section to learn how to set up forms and utilize them for ticket creation.

{% content-ref url="zendesk/forms" %}
[forms](https://docs.clearfeed.ai/clearfeed-help-center/integrations/zendesk/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>

## Solving Tickets

You can solve Zendesk tickets from the request channel by clicking on the `Mark As Solved` button on the ticket details message.

This button can be configured to be accessed by *everyone* or *only responders*. If you want to configure the accessibility and visibility of this action, read about [Screen Configuration for Zendesk](#sync-settings) to understand the detailed steps.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-8cfed44a30b6816421a4a76087b10ce47a7fd173%2Fimage%20(3)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt=""><figcaption><p>Zendesk ticket block on Slack with an option to Mark As Solved</p></figcaption></figure>

### Mandatory fields

On Zendesk, you can configure the custom fields as **Required to solve a ticket**. This ensures certain fields are always updated before tickets are resolved (read more [here](https://support.zendesk.com/hc/en-us/articles/4408846008218-Making-conditional-ticket-fields-required-)).

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-d8149c4a45b13b2c98c40f552e101f8d9b63570d%2Fimage%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="563"><figcaption><p>Required to solve a ticket checkbox on Zendesk field configuration</p></figcaption></figure>

If you have configured fields on Zendesk that are required before solving a ticket - ClearFeed will display these fields in a ***Solve ticket*** dialog box when you try to solve a ticket in which such mandatory fields are associated.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-7f93f685e58c9f2899694987d76fe5771edb919d%2Fimage%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt=""><figcaption><p>Solve ticket form to fill-up the mandatory fields</p></figcaption></figure>

**Note:** This dialog box will only show the ClearFeed-supported Zendesk field types *(Text, Multi-line, Drop-down, Multi-select, Checkbox, Number, and Date)*.

If any other field types are required to solve the ticket - we will show an error message stating the field names. These fields can be updated from Zendesk to solve the ticket.

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-4416443618beb292beb255f764f29ae618082a51%2Fimage%20(2)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt=""><figcaption><p>Error message shown for unsupported mandatory solve fields</p></figcaption></figure>

## Sync CSAT Survey to Zendesk Tickets

You can now automatically sync CSAT (Customer Satisfaction) survey responses collected in ClearFeed back to the corresponding tickets in Zendesk.

**How It Works**

When a user submits a Thumbs Up/Down rating (2-point survey) on a ClearFeed request that is linked to a Zendesk ticket, their response is added as CSAT on the correspoding Zendesk ticket.

#### How to Enable

To set up this integration:

1. **In ClearFeed:**
   * Open the target Collection.
   * Set **Ticketing to Zendesk** (under *Collection Settings → Ticketing*).
   * Set **CSAT Survey format to Thumbs Up/Down (2-point)**.
   * Enable the **“Sync CSAT responses to Zendesk”** toggle.
2. **In Zendesk:**
   * Ensure **CSAT is enabled** under *Admin Center → Settings → Customer Satisfaction (CSAT)*.
   * Use the **2-point survey format (Good/Bad rating)**.
   * Zendesk should use the **Legacy CSAT survey**, not the newer custom satisfaction survey types (e.g., emojis, multi-question forms).
3. **Authentication Requirements:**
   * ClearFeed needs the **Zendesk impersonation scope** to post comments.
   * If impersonation hasn't been granted, you’ll see an error when enabling the sync.
   * To resolve this, go to *Integrations → Zendesk* and click **Reconnect Integration** to re-authorize with the necessary permissions.

## Edit Tickets from Slack

You can manage Zendesk tickets filed using ClearFeed directly from a Triage channel. This allows agents to view and edit the ticket's details, and directly solve them, all from a Triage.

## Reverse Zendesk Flow

Work on Zendesk Tickets created from other channels (eg. email, help centre, chat) from Slack using ClearFeed's Reverse Zendesk flow.

### Supported Workflow

* Zendesk tickets that are started outside of Slack (via email or help centre) can be brought to Slack
* ClearFeed would enable bi-directional sync of comments and status ensuring that the support team can remain on Slack first
* Agents can respond to these tickets from Slack. They can also edit the ticket properties from the triage channel
* If a Form has been used in Zendesk while creating the ticket - you can also choose to import that form in ClearFeed to display its values in Slack

### Setup

1. Create a dedicated Slack channel (or reuse where the Zendesk ticket notifications would arrive. Also, monitor this channel using ClearFeed (learn [how to monitor a channel](https://docs.clearfeed.ai/clearfeed-help-center/sources/manage-request-channels))
2. Create a new **Slack Webhook Workflow**
   1. Go to Slack Workflow Builder
   2. Create a workflow and start the workflow from a webhook
   3. Configure the variables **ticket\_id** and **ticket\_url**
   4. As a next step, select Send Messages to a channel
   5. Select the channel that we configured in Step 1.
   6. Add the message exactly as follows: **Ticket #ticket\_id needs attention**
   7. Finish and publish the workflow

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-6c47053e0f1725bd9d7fa3bbb3c69d7bf7734f4d%2Fscreenrun-03-29-2024-11-45-03.gif?alt=media" alt="" width="563"><figcaption><p>Setting up the Slack webhook workflow</p></figcaption></figure>

3. **Copy the Web Request URL** from the webhook workflow step once published.

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

4. Now go to Zendesk Admin Center → Webhooks and **Create a New Zendesk Webhook** as shown below
   * The endpoint URL should be the same as the Web request URL copied from Slack in the previous step

<figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-22d8f98b31aa72fa770649defc9198c0a251bbbb%2Fimage%20(138).png?alt=media" alt="" width="543"><figcaption><p>Create a new webhook on Zendesk</p></figcaption></figure>

5. **Create a new Zendesk Trigger:** Go to Zendesk Admin Center → Business Rules → Triggers and Create a new Zendesk trigger with the following conditions:

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

6. In the **Actions** section, choose **Notify by > Active webhook** and point to the Slack Webhook Web Request URL.
   * The request body can be customized based on the variables set up in the Slack Webhook Workflow

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

7. **Whitelist the Slack Webhook Workflow Bot:** Go to the following page → <https://web.clearfeed.app/settings/additional-settings> and under **Bot Whitelisting Preferences**, select and add the bot with the same name as the webhook workflow created previously.

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

### Testing Workflow

1. Start a ticket directly from Zendesk or via email (to the Zendesk support group)
2. Notice how the ticket comes as a notification into Slack in the monitored channel
3. ClearFeed replies to the notification with ticket sync details
4. Reply to the Slack thread and observe how the comments get synced back to Zendesk and vice-versa.

## FAQs

1. **What happens if a requestor tries to change the sync settings from the request channel?**\
   **Answer:** If a requestor tries to modify any of the sync settings from Slack, they see an error that points out that this setting is only accessible by responders.

   <figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-bd7830893378258f8d3a1a44d38fe29193fed4bd%2Fimage%20(2)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" width="476"><figcaption></figcaption></figure>
2. **Why do I see a footer saying "submitted .. on behalf of" when Slack messages are posted in Zendesk by ClearFeed?**\
   **Answer:** In certain cases, Zendesk automatically adds this footer to messages posted by ClearFeed. The name of the person mentioned in "on behalf of" refers to the person who has authorized (ie. installed) the ClearFeed App in Zendesk. This usually happens when we post messages by admins (other than the person who installed ClearFeed) in Zendesk. But, typically, is not seen when ClearFeed posts on behalf of regular users and agents.

   <figure><img src="https://3455705434-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FE2O2wTaNovd6fXpEuLKz%2Fuploads%2Fgit-blob-5bab90922011691c705e1d87e84e4f6c4ab1156a%2Fzendesk_footer.png?alt=media" alt="" width="563"><figcaption><p>Zendesk "Posted on behalf of" footer</p></figcaption></figure>
3. **Is it possible to tag users on Slack when they are mentioned in a Zendesk ticket?**\
   **Answer:** Yes, it is possible to tag Slack users when they are mentioned in a Zendesk ticket. However, this feature is **disabled by default** to prevent duplicate notifications. If you'd like to enable this functionality, please **reach out to our Support team** .
4. **Why am I seeing a “Failed to sync Zendesk Webhook” error?**\
   **Answer:** This error appears when ClearFeed attempts to periodically update the Zendesk webhook subscription but is unable to do so due to insufficient permissions.
5. **Does this error mean my Zendesk–ClearFeed sync is broken?**\
   **Answer:** Not necessarily. If your sync is working in both directions, the error can be safely ignored. The error only indicates that ClearFeed was unable to refresh the webhook subscription, not that the active sync is failing.
6. **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.
