# Automation Configuration

## Choose Your Trigger

Pick what event starts your automation:

### Request Triggers

*Available in Integrations & External HelpDesk Product Edition*

* **Request Creation** – New request submitted
* **Request Update** – Status, priority, or field changes
* **Request Message Added** – New reply
* **Request CSAT Submitted** – Feedback received
* **Request Reaction Added** – Request reacted with an Emoji (you pick which one)

### Ticket Triggers

*Available in all Product Editions*

* **Ticket Creation** - New ClearFeed ticket created
* **Ticket Update** - Field changes
* **Ticket Message Added** - New message
* **Ticket CSAT Submitted** - Feedback received on ticket
* **Ticket Reaction Added** - Ticket reacted with an Emoji (you pick which one)
* **Approval Workflow Completed** - Whenever an approval workflow is **completed**, whether the final outcome is *approved* or *rejected*.
* **Before Approval Workflow Triggered** – When selected, the automation runs **synchronously** before the approval workflow is initiated. Because the system waits for this automation to complete, delay steps are **not supported**, and the approval workflow executes only after the automation finishes.<br>

  <figure><img src="/files/luJDD9zIZ36c3UT4J2Ts" alt="" width="563"><figcaption><p>Triggers in Automations for Internal Helpdesk</p></figcaption></figure>

## Add Conditions

Conditions help narrow when your automation should run.

{% hint style="success" %}
Conditions are optional but allow precise targeting — all conditions must be true for the automation to execute.
{% endhint %}

### Standard Fields

Conditions are available on: Status, Priority, Assignee, Channel, Assigned Team, First Message Author, Customer, Source

Operators available:

* `is set to` / `is not set to`
* `is one of` / `is not one of`

### Approval Workflow Fields

* **Approval Workflow:** The name of the approval workflow. Use this field in automations to trigger actions for a specific approval workflow.
* **Approval Workflow Status:** The final status of the approval workflow. Use this field to define conditions based on workflow state (approved or rejected).

### Business Hours

Time-based conditions that respect your workspace timezone:

* `Trigger time is inside business hours`
* `Trigger time is outside business hours`

### Custom Fields

Different field types support different operators:

| Field Type        | Supported Operators                                             |
| ----------------- | --------------------------------------------------------------- |
| **Text**          | `is set to`, `is not set to`                                    |
| **Number**        | `is set to`, `is not set to`, `is greater than`, `is less than` |
| **Date**          | `is set to`, `is not set to`, `is after`, `is before`           |
| **Single Select** | `is set to`, `is not set to`, `is one of`, `is not one of`      |
| **Multi Select**  | `contains any of`, `contains all of`, `contains none of`        |
| **User Select**   | `is set to`, `is not set to`, `is one of`, `is not one of`      |

<figure><img src="/files/wojn3SnpEtsIweP2RVe9" alt="" width="563"><figcaption></figcaption></figure>

## Set Delay

Delays allow actions to run after a set time:

* **Default:** No delay
* **Maximum:** 29 days, 59 minutes, 59 seconds
* **Format:** Days / Hours / Minutes

### Invariance Settings

Define which fields should be monitored during the delay to control automation cancellation.

* If an invariant field is part of the automation’s **Conditions**, the automation only cancels if the updated value makes the condition false.
* If an invariant field is **not** part of the Conditions, *any* change cancels the automation.

#### Example

Let’s say you're setting up an automation to send a follow-up message to the Assignee if the **Status of the request** remains "Open" for 3 days. You set a delay of 3 days before sending the message.

* **Invariant Field is part of Conditions**: You choose to monitor the **Status** field (since it is part of the condition for triggering the action). If the **Status** changes to "Resolved" within the 3-day delay, the automation will **cancel** because the condition (Status = "Open") is no longer true. However, if the **Status** remains "Open," the automation will proceed and send the follow-up email after 3 days.
* **Invariant Field is not part of Conditions**: Now, let’s say you also monitor the **Priority** field (which is **not** part of the automation's Conditions). If the **Priority** field is updated during the delay (e.g., from "Medium" to "High"), the automation will **cancel**, regardless of whether the **Status** remains "Open" or not, because you set the **Priority** field to automatically cancel the automation on change


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.clearfeed.ai/clearfeed-help-center/clearfeed-helpdesk/automations/automation-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
