Overview
The policy engine evaluates every transaction before it reaches the MPC signing layer. Policies are per-agent and can be updated at any time via the SDK or REST API. The first policy violation stops the transaction immediately.Policy Types
Spending Limits
Control how much an agent can spend:Address Controls
Restrict which addresses an agent can send to:If
allowedAddresses is set, only those addresses are permitted. If both allowedAddresses and blockedAddresses are set, allowedAddresses takes priority.Token Controls
Restrict which tokens an agent can transact with:Velocity Controls
Limit transaction frequency to prevent runaway agents:Time-Based Controls
Restrict when transactions can occur:Human Approval
Route high-value transactions to human review:Human approval is available on Growth and Enterprise plans. When a transaction requires approval, a webhook event is sent and the transaction enters a
pending_approval state.Policy Evaluation Order
Policies are checked in this order. The first failure stops the transaction:1
Agent Status
Is the agent active (not frozen)?
2
Token Check
Is this token in the
allowedTokens list?3
Address Check
Is the recipient in
allowedAddresses and not in blockedAddresses?4
Amount Check
Does this exceed
maxTransactionAmount?5
Daily Limit
Would this exceed the rolling daily total?
6
Monthly Limit
Would this exceed the rolling monthly total?
7
Velocity Check
Has the agent exceeded its transaction rate (
velocityLimit)?8
Schedule Check
Is this within allowed hours and days?
9
Human Approval
Does this require human review based on the threshold?
10
Infrastructure Safety Net
Paratro-enforced hard limits (cannot be overridden).
Policy Violation Events
When a policy blocks a transaction, the API returns a detailed error:Policy Templates
Use templates for common configurations:Best Practices
- Use allowedAddresses — Whitelist trusted addresses rather than relying solely on amount limits.
- Enable human approval for high-value — Set a threshold above which humans review transactions.
- Monitor policy violations — Track violations via webhooks to identify misconfigured agents.
- Use velocity limits — Prevent runaway loops where an agent repeatedly attempts transactions.
- Review policies weekly — As agent behaviors evolve, update policies to match.