Overview
Corsa’s rule engine allows you to:- Browse pre-built rule templates for common compliance scenarios
- Copy templates to your workspace or create custom rules from scratch
- Activate rules to run against incoming transactions
- Evaluate transactions on-demand against your active rules
Step 1: Browse Rule Templates
Endpoint:GET /v1/rule-templates
List available pre-built templates with pagination and filtering.
Get a Specific Template
Endpoint:GET /v1/rule-templates/{id}
Step 2: Copy a Template to Your Workspace
Endpoint:POST /v1/rule-templates/{id}/copy
Copy a template into your workspace as a draft rule that you can customize.
Step 3: Create a Custom Rule
Endpoint:POST /v1/rules
Create a rule from scratch with custom conditions and actions.
Rule Structure
| Field | Required | Description |
|---|---|---|
name | Yes | Human-readable rule name |
conditions | Yes | Rule conditions using all (AND) / any (OR) logic |
actions | Yes | Actions to execute when the rule matches |
description | No | Detailed description of the rule’s purpose |
Condition Operators
Conditions can target properties onclient or transaction entities and support operators like equal, notEqual, greaterThan, lessThan, greaterThanInclusive, lessThanInclusive, contains, and more.
Aggregation conditions allow you to evaluate sums, counts, or averages over a time window (e.g., “total withdrawals in the last 24 hours”).
Step 4: Activate or Disable a Rule
Rules must be activated before they evaluate transactions.Activate a Rule
Endpoint:POST /v1/rules/{id}/activate
Disable a Rule
Endpoint:POST /v1/rules/{id}/disable
Only draft or previously disabled rules can be activated. Only active rules can be disabled.
Step 5: Update or Delete a Rule
Update a Rule
Endpoint:PUT /v1/rules/{id}
Modify a rule’s name, description, conditions, or actions.
Delete a Rule
Endpoint:DELETE /v1/rules/{id}
Only non-active (draft or disabled) rules can be deleted.
Step 6: Evaluate Transactions Against Rules
Endpoint:POST /v1/evaluation/evaluate
Evaluate a transaction against all active rules on-demand. This is useful for testing rules or evaluating transactions outside of the normal ingestion flow.
Step 7: View Evaluation Results
Results by Rule
Endpoint:GET /v1/evaluation/rule/{ruleId}/results
See all transactions that were evaluated against a specific rule.
Results by Transaction
Endpoint:GET /v1/evaluation/transaction/{transactionId}/results
See all rules that were evaluated against a specific transaction.
What’s Next?
Ingest Operations
Ingest deposits, withdrawals, and trades to be evaluated by your rules.
Manage Alerts & Cases
Manage alerts created by rule evaluations.