Introduction
Every scheduled and event-based trigger supports conditions. Conditions filter which devices are pulled into an automation run when the trigger fires — so instead of running against every assigned device, you can target a specific subset of devices based on platform, group, tag, status, or other device attributes.
The manual trigger doesn't support conditions. All other trigger types share the same condition builder described here.
How Conditions Work
Conditions are configured per trigger, not per automation. If an automation has multiple triggers, each trigger can have its own independent condition set.
When a trigger fires, Level evaluates its conditions against your devices at that moment. Devices that match all conditions are pulled into the automation run. Devices that don't match are skipped — they're not tracked or queued, and they'll be evaluated fresh the next time the trigger fires.
Multiple conditions use AND logic: every condition must be satisfied for a device to be included. There's no OR option within a single trigger. If you need OR-style behavior, add a second trigger with different conditions.
ℹ️ NOTE: Triggers evaluate against all devices in your organization. The Group condition is how you scope a trigger to a subset — without one, any device in the org that matches the other conditions will be pulled in.
Configuring Conditions
Conditions are set inside the trigger configuration panel when adding or editing a trigger.
ℹ️ NOTE: Triggers and actions are only editable in edit mode. From the pipeline view, click Edit in the top-right corner to enter edit mode. If you click a trigger or action outside of edit mode, a read-only detail panel opens showing run status and history — you won't see configuration options there.
Open the trigger configuration panel by clicking an existing trigger or adding a new one.
Click the Condition dropdown and select a condition type.
Set the operator and value for the condition.
To add another condition, click + Add new condition.
To remove a condition, click Remove next to it.
Click Save to apply.
Condition Reference
ℹ️ NOTE: Several condition types — including Platform, OS, Tag, and Group — are populated dynamically from your actual device inventory. If your environment only has Windows devices, you'll only see Windows in the Platform dropdown. OS shows the specific versions present across your enrolled devices. Empty dropdowns mean Level hasn't detected any devices with that attribute yet.
All devices
No filtering applied. Every device in your organization is included when the trigger fires.
Selecting All devices requires no further configuration. Use it when you want the trigger to run against your entire device inventory with no restrictions.
Platform
Filter by the device's operating system family.
Operator | Description |
Equal to | Device OS matches one of the selected platforms |
Not equal to | Device OS does not match any of the selected platforms |
Values: Windows, macOS, Linux. Multiple values can be selected.
Tag
Filter by tags applied to the device.
Operator | Description |
Equal to | Device has all of the selected tags |
Not equal to | Device does not have any of the selected tags |
Select one or more tags from your organization's tag list.
💡 TIP: Tag conditions are useful for targeting devices by function or client without relying on group structure — for example, running a trigger only on devices tagged SERVER or PRODUCTION.
Group
Filter by the device group the device belongs to.
Operator | Description |
Equal to | Device is a member of one of the selected groups |
Not equal to | Device is not a member of any of the selected groups |
Select one or more groups from your group hierarchy. Child groups can be expanded inline.
Status
Filter by whether the device is currently online or offline at the moment the trigger fires.
Operator | Description |
Equal to | Device status matches the selected value |
Not equal to | Device status does not match the selected value |
Values: Online, Offline.
ℹ️ NOTE: The Status condition is the key lever for controlling offline device behavior. Without a Status condition, offline devices that otherwise match will be pulled into the run and queued — they'll resume at whatever action they were on once they come back online. Adding a Status = Online condition excludes offline devices entirely, so they won't be queued at all.
Hostname
Filter by the device's hostname.
Operator | Description |
Equal to | Hostname exactly matches the entered value |
Not equal to | Hostname does not match the entered value |
Contains | Hostname includes the entered string |
Does not contain | Hostname does not include the entered string |
Enter the hostname value manually. Matching is case-insensitive.
💡 TIP: Use Contains to target naming conventions — for example, filtering to all devices whose hostname contains SRV or a client prefix.
Last seen (in days)
Filter by how many days have passed since the device last checked in with Level.
Operator | Description |
Greater than | Device was last seen more than N days ago |
Greater than or equal to | Device was last seen N or more days ago |
Less than | Device was last seen fewer than N days ago |
Less than or equal to | Device was last seen N days ago or fewer |
Enter a whole number of days as a free-text value.
💡 TIP: Use this condition to limit automation runs to recently active devices — for example, skipping devices that haven't been seen in more than 30 days, which may be decommissioned or in storage.
Architecture
Filter by the device's CPU architecture.
Operator | Description |
Equal to | Device architecture matches the selected value |
Not equal to | Device architecture does not match the selected value |
Values: amd64, arm64.
OS
Filter by the device's specific OS version.
Operator | Description |
Equal to | OS version matches the selected value |
Not equal to | OS version does not match the selected value |
Values are populated from the OS versions present in your device inventory. Examples include Windows 11, Windows 10, Windows Server 2022, Windows Server 2019, Windows Server 2016, macOS Sonoma, Debian. Your list will reflect what's actually enrolled.
ℹ️ NOTE: OS values are specific version names, not OS families. To filter broadly by operating system type (Windows, macOS, Linux), use the Platform condition instead.
Type
Filter by device type.
Operator | Description |
Equal to | Device type matches the selected value |
Not equal to | Device type does not match the selected value |
Values: Workstation, Server.
FAQ
Do conditions apply every time the trigger fires, or just the first time? Every time. Conditions are evaluated fresh on each trigger fire. A device that matched last week might be excluded this week if its group membership, tags, or status has changed.
Can I use OR logic between conditions? Not within a single trigger. Multiple conditions always use AND logic. To achieve OR-style behavior, add a second trigger to the automation with different conditions — both triggers will be evaluated independently.
Will a device be skipped permanently if it doesn't match the conditions? No. Conditions are evaluated fresh each time the trigger fires. If a device's attributes change — its group, tags, status, or OS — and it matches on the next fire, it'll be included in that run.
What if I want to run a trigger on all devices except those in one group? Use a Group condition with the Not equal to operator and select the group to exclude.
Can I use conditions to filter devices on the manual trigger? No. The manual trigger doesn't support conditions — you select devices directly when adding them. See Manual Trigger for how that works.

