Overview
An auto-remediation fact associates a condition with a remediation playbook. The condition compares case attributes, supported playbook inputs, or both. For example:disposition_label = "Malicious" AND confidence.score > 85
This expression matches a case when:
- The disposition is
Malicious. - The confidence score is greater than
85.
- Configure an auto-remediation fact in the AirMDR UI.
- Select supported fields and operators.
- Write and combine conditions.
- Reference inputs from the selected remediation playbook.
- Verify matching and nonmatching outcomes.
- Reproduce the supplied service API test using your own identifiers.
📋 Prerequisites
📋 Prerequisites
- Sign in to the AirMDR organization where the fact will apply.
- Ensure your account can access and manage Facts.
- Identify the remediation playbook and its required inputs.
- Identify the exact field values you want the condition to compare.
- Prepare a test case and an appropriate test playbook.
🤔 How to access the Facts Page?
🤔 How to access the Facts Page?
- Sign in to AirMDR.
- Select the appropriate organization.
- In the left navigation, open Knowledge Management and navigate to Facts.
- Locate the required fact using Search facts.
- Use the available filters to narrow the results.
📧 Step-by-Step: Configure an Auto-Remediation Fact
Create or open a fact
- Select + Add Fact to create a fact.
- Select an existing fact to edit its configuration.
Describe the intended behavior
Automatically run the selected remediation playbook for malicious cases with a confidence score greater than 85.Keep the description clear enough for another user to understand the intended behavior.
Add the auto-remediation tag
auto-remediationThe supplied API reference and recorded auto-remediation fact use this tag.Configure the scope and dates
Select the remediation playbook
Enter the condition
disposition_label = "Malicious" AND confidence.score > 85This condition requires both comparisons to match.Review and save
- Check that Content accurately describes the expression.
- Verify the selected playbook.
- Review the scope, start date, and expiry date.
- Check field names, operators, quotation marks, and grouping.
- Select Save.
- Locate the saved fact in the Facts list.
- Review Status, Start Date, and Expires On.
Verify the Outcome in the UI
- Confirm that it is saved with the intended condition and remediation playbook.
- Review its status, scope, start date, and expiration date.
- Use a test case with known field values.
- Ensure the relevant approval action refers to the intended playbook.
- Check that required playbook inputs are available.
- Open Investigations and inspect the relevant action in All Actions.
- Review the action status and any execution or failure details.
- Where available, inspect the AUTO REMEDIATED group.
- Verify the playbook execution outcome.
- Repeat using a case that does not satisfy the condition.
Condition Syntax
A comparison generally consists of a field, an operator, and a value: field operator value For example:severity_label = "High"
AND, OR, NOT, and parentheses to combine comparisons.Format values correctly
Format values correctly
- Use
severity_labelfor the severity label. - Use
disposition_labelfor the disposition label. - Use
confidence.scorefor numeric confidence.
Logical operators
Logical operators
Evaluation precedence
Evaluation precedence
NOTANDOR
AND and OR.For example:Unsupported comparison symbols
Unsupported comparison symbols
confidence.score > 84This replacement depends on the value being an integer; it does not provide a general greater-than-or-equal comparison for fractional values.Express “severity is not Low” as: NOT severity_label = "Low"Supported Fields and Operators
Operators by data type
Operators by data type
Operator reference
Operator reference
Supported text fields
Supported text fields
=, in, contains, starts_with, ends_with, matches, existsSupported numeric fields
Supported numeric fields
=, >, <, in, existsconfidence.score > 85priority and type as numeric fields. Use their stored numeric values rather than substituting UI display labels.Supported boolean fields
Supported boolean fields
=, existsarchived = falseUse lowercase true or false without quotation marks.Supported time fields
Supported time fields
=, >, <, existscreated_at > 1759276800Missing fields
Missing fields
confidence.score > 85A case without confidence.score does not satisfy this comparison.A condition that does not reference confidence can still match that case:NOT reverses the comparison result. Where a rule must positively establish an attribute, use an explicit positive comparison.Fields under lists
Fields under lists
Use Playbook Inputs in Conditions
Conditions can reference supported inputs from the remediation playbook associated with the fact. Use this format:playbook.<normalized_input_name>
Normalize the input name
Normalize the input name
- Convert the input name to lowercase.
- Replace each run of spaces and punctuation with one underscore.
- Add the
playbook.prefix.
Supported input types
Supported input types
Unsupported inputs
Unsupported inputs
Example using a playbook input
Example using a playbook input
- A malicious disposition.
- Confidence greater than 85.
- The playbook input to match
example.com.
🛡️ Sample Tested Condition (For Reference)
Example 1: Malicious cases with confidence greater than 85
Example 1: Malicious cases with confidence greater than 85
Example 2: High-severity malicious cases
Example 2: High-severity malicious cases
Example 3: Selected dispositions with confidence greater than 80
Example 3: Selected dispositions with confidence greater than 80
Example 4: High or medium severity, malicious disposition, and confidence greater than 80
Example 4: High or medium severity, malicious disposition, and confidence greater than 80
Additional Information
🧰 Troubleshooting
🧰 Troubleshooting
🛑 Best Practices
🛑 Best Practices
- Start with a narrow condition and verify it against known case values.
- Test matching and nonmatching cases.
- Include threshold boundaries and missing values in testing.
- Use parentheses when combining
ANDandOR. - Keep the fact description aligned with its executable condition.
- Review playbook inputs whenever you change the selected playbook.
- Configure expiration for temporary rules.
- Remove test facts after testing.
- Review execution outcomes when validating automation.
👉 Support & Maintenance
👉 Support & Maintenance

