AQL Filter Documentation
AQL Filter — Assets Query Language
The AQL filter lets you select which assets to restore from a backup by writing a query expression. Only assets matching the query will be processed.
---
Basic Syntax
<field> <operator> <value>
Example: objectType = "Server"
---
Fields
Field | Description |
|---|---|
objectKey | The unique asset key (e.g. IT-123) |
objectTypeId | The numeric object type ID |
name | The asset name |
<AttributeName> | Any custom attribute by its name (e.g. Status, Owner) |
Operators
Equality
Status = "Active"
Status != "Decommissioned"
Comparison (numeric or date values)
RAM >= 16
PurchaseDate < "2023-01-01"
Pattern matching
name LIKE "srv-*"
Use * to match any sequence of characters, ? to match a single character.
List membership
Status IN ("Active", "Maintenance")
Status NOT IN ("Retired", "Decommissioned")
Starts / ends with
objectKey STARTS WITH "IT-"
name ENDS WITH "-prod"
Empty check
Owner IS EMPTY
Owner IS NOT EMPTY
--
Combining Conditions
Use AND, OR, NOT, and parentheses to build compound expressions.
objectType = "Server" AND Status = "Active"
objectType = "Laptop" OR objectType = "Workstation"
NOT Status = "Retired"
(objectType = "Server" AND Status = "Active") OR objectType = "Network"
--
Examples Restore only active servers:
objectType = "Server" AND Status = "Active"
Restore all laptops assigned to a specific owner:
objectType = "Laptop" AND Owner = "john.doe"
Restore everything except decommissioned assets:
NOT Status = "Decommissioned"
Restore assets by key prefix:
objectKey STARTS WITH "IT-"
Restore servers with 32 GB RAM or more, excluding retired ones:
objectType = "Server" AND RAM >= 32 AND Status != "Retired"
--
Notes
- String values are case-insensitive.
- Values containing spaces must be wrapped in double or single quotes: "Active" or 'Active'.
- If a field or attribute is not present on an asset, it is treated as empty.
- If the filter expression contains a syntax error, the asset is included by default (failopen behavior).