> For the complete documentation index, see [llms.txt](https://help.nadifor.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.nadifor.ai/platform-settings/platform-settings/automations/set-up-automations.md).

# Set up automations

Create automated workflows that run when specific events happen — like automatically enrolling new users in onboarding courses.

{% hint style="info" %}
**Who is this for?** Admins
{% endhint %}

## How automations work

Each automation has three parts:

1. **Trigger** — The event that starts the automation
2. **Filter** (optional) — Conditions that control when the automation runs
3. **Action** — What happens when the automation is triggered

## Create an automation

{% stepper %}
{% step %}

#### Open the automation builder

Go to **System Settings > Automations** and click **Create automation**.

![New Automation page, step 1 "Select the event that starts your automation" expanded, with User Created as the only available trigger and Course Deadline Approaching / Quiz Completed greyed-out under a Coming Soon ROADMAP badge](https://1540991871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1lKGIWJWcNwQu3kxzBSH%2Fuploads%2Fgit-blob-d384cec9be71904561ae65fc34a27badcfec1475%2Fautomations-builder-new.png?alt=media)
{% endstep %}

{% step %}

#### Choose a trigger

Select the event that starts your automation. Click a trigger to select it.

| Trigger          | When it fires                       |
| ---------------- | ----------------------------------- |
| **User Created** | A new user is added to the platform |

{% hint style="info" %}
Additional triggers are on the roadmap, including: Course Deadline Approaching, Quiz Completed, Quiz Failed, Certificate Expiring, User Role Changed, User Department Changed, and Compliance Training Overdue.
{% endhint %}

After selecting a trigger, it shows a green checkmark. Click **Change** to pick a different trigger.

![Automation builder after picking the User Created trigger: step 1 collapsed with a green checkmark and a Change button, step 2 "Add Filter (Optional)" and step 3 below it still unconfigured](https://1540991871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1lKGIWJWcNwQu3kxzBSH%2Fuploads%2Fgit-blob-f9262ab2bb1ddad80f1e774f0c5c7e50aa3e5c06%2Fautomations-trigger-selected.png?alt=media)
{% endstep %}

{% step %}

#### Add a filter (optional)

Click **Add Filter** to control when the automation runs. This step is optional — leave it empty to run the automation for every trigger event.

![Step 2 Filter Conditions panel with the "Combine with" toggle set to ALL (AND); two rows: Department Equals "Engineering" joined by an AND pill to Location Not Equals "New York", each with a red delete icon](https://1540991871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1lKGIWJWcNwQu3kxzBSH%2Fuploads%2Fgit-blob-a3e832d79962bbd4a394fbbeb8aeb93faaeb6ac4%2Fautomations-filter-conditions.png?alt=media)

Each filter condition has three parts:

| Part         | Options                                                                         |
| ------------ | ------------------------------------------------------------------------------- |
| **Field**    | Job Title, Department, Location                                                 |
| **Operator** | Equals, Not Equals, Contains, Not Contains, Greater Than, Less Than, In, Not In |
| **Value**    | Free text                                                                       |

In this example, two conditions are set: **Department Equals "Engineering"** AND **Location Not Equals "New York"** — so the automation only runs for engineers outside New York.

#### Combining conditions

Use the **Combine with** toggle at the top right of the filter section to control how multiple conditions work together:

* **ALL (AND)** — Every condition must be true for the automation to run
* **ANY (OR)** — The automation runs if any one condition is true

Click **Add Condition** to add more conditions within the same group. Use the delete button next to any condition to remove it.
{% endstep %}

{% step %}

#### Choose an action

Select what should happen when the automation triggers. Actions are organized by category.

| Category          | Available actions                   |
| ----------------- | ----------------------------------- |
| **Enrollments**   | Assign Course Group, Assign Courses |
| **Notifications** | Coming soon                         |
| **Integrations**  | Coming soon                         |

After selecting an action, configure it — for example, choose which courses to assign.

![Step 3 with the Assign Courses action selected, showing a "Configure Action" section with an empty "Search and select courses..." multi-select and a "+ Add Another Action" button below](https://1540991871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1lKGIWJWcNwQu3kxzBSH%2Fuploads%2Fgit-blob-cdaa5d608c8205f806d99e4d68d6fe0a67839005%2Fautomations-action-assign-courses.png?alt=media)

Click **+ Add Another Action** to chain multiple actions in one automation.
{% endstep %}

{% step %}

#### Name and save

Click the automation title at the top to give it a descriptive name (e.g., "Enroll new hires in onboarding courses"). Optionally add a description.

Click **Save Automation** to activate it.
{% endstep %}
{% endstepper %}

## Example: Auto-enroll new engineers

A common automation: when a new user joins the Engineering department, automatically enroll them in technical onboarding courses.

| Step        | Configuration                                               |
| ----------- | ----------------------------------------------------------- |
| **Trigger** | User Created                                                |
| **Filter**  | Department Equals "Engineering"                             |
| **Action**  | Assign Courses → select your engineering onboarding courses |

## Manage automations

From the **Automations** list page, you can:

* **Search** automations by name
* **Sort** by creation date
* **Filter** automations
* Click an automation to edit it

## Related articles

* [Enroll users in courses](/users-and-teams/users-and-teams/enrollments/enroll-users-in-courses.md)
* [Create course groups](/create-and-manage-content/create-and-manage-content/course-groups/create-course-groups.md)
* [Add users](/users-and-teams/users-and-teams/users/add-users.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.nadifor.ai/platform-settings/platform-settings/automations/set-up-automations.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
