Flow Studio
Rule Set Selection
What rule sets are, how they are identified by ID, using static vs. expression-driven rule set IDs, and versioning strategies.
What is a Rule Set?
A rule set is a named, versioned collection of business rules managed in the Rules admin interface. It defines the expected fact input shape, the rules to evaluate, and the possible outcomes. Rule sets are tenant-scoped — a tenant's rule sets are not visible to other tenants.
Rule Set ID Formats
| Pattern | Example | Use Case |
|---|---|---|
| Static ID (latest active version) | "invoice-approval-policy" | Always use the currently active rule set — changes take effect immediately |
| Versioned ID | "invoice-approval-policy-v2" | Pin to a specific version — workflow behavior is stable even if rules change |
| Expression-driven ID | "$output.fetchConfig.approvalRuleSetId" | Dynamic selection based on entity type, region, or other workflow data |
Dynamic Rule Set Selection
// Select rule set based on invoice category:
{
"ruleSetId": "'invoice-approval-' + $output.fetchInvoice.data.category"
}
// Select rule set from config entity:
{
"ruleSetId": "$output.fetchTenantConfig.data.approvalRuleSetId"
}
// Select rule set based on amount tier:
{
"ruleSetId": "$output.fetchInvoice.data.total > 10000 ? 'high-value-approval' : 'standard-approval'"
}
Versioning recommendation: For compliance-sensitive workflows (financial approvals, regulatory checks), pin to a versioned rule set ID. This ensures the rules used at the time of a decision are auditable and traceable — even if the rule set is later updated.