Policy Simulator
The policy simulator runs the same evaluation engine as the gateway but never calls connectors. Use it to safely test and iterate on policy rules before applying them to production agents.
Purpose
- Safe testing — no side effects, no real actions executed
- Same engine — uses the exact same evaluator as
POST /v1/agent-tool-call - Fast iteration — test rule changes without affecting live agents
- Debugging — understand why a request was allowed, denied, or escalated
How it works
The simulator accepts the same request body as the gateway endpoint. It evaluates the request against the active policy version and returns the decision, risk level, and reason — but skips the connector execution step.
Request → Policy Engine → Decision (no connector call)Usage
Send a simulated request to the policy simulator:
curl -X POST https://your-relynt-instance/v1/policy-simulator \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"action": "update_deal",
"resource": "crm:deal:123",
"payload": {
"amount": 100000,
"stage": "closed_won"
}
}'Response
{
"decision": "pending_approval",
"risk_level": "high",
"requires_approval": true,
"reason": "Amount exceeds max_amount_change threshold (10000); Stage closed_won requires approval",
"policy_version": "v3",
"matched_rule": {
"action": "update_deal",
"resource_pattern": "crm:deal:*",
"conditions": {
"max_amount_change": 10000,
"require_approval_if_stage": ["closed_won", "closed_lost"]
}
}
}Response fields
| Field | Type | Description |
|---|---|---|
decision | string | allow, deny, or pending_approval |
risk_level | string | low, medium, or high |
requires_approval | boolean | Whether the request would trigger an approval flow |
reason | string | Human-readable explanation of the decision |
policy_version | string | Which policy version was evaluated |
matched_rule | object | The rule that matched (if any) |
The simulator does not create receipts or trigger Slack approvals. It only evaluates the policy and returns the result.
Use cases
- Before deploying a new policy version — simulate real requests to verify the rules behave as expected
- Debugging denied requests — reproduce a denied request and see which rule matched
- Training — let team members explore how policies work without risk
- CI/CD — integrate simulator calls into your test suite to catch policy regressions
Last updated on