activity.params. See the
activity parameter reference for the full field
list and Transaction Management for product flows.
Use activity.kind
when you want policies to survive activity version upgrades. Pin activity.type when you rely on
fields that exist only on a specific version (for example destination_address on
ACTIVITY_TYPE_CREATE_SWAP_QUOTE_V2 and ACTIVITY_TYPE_EXECUTE_SWAP_V3).
Swap quotes
Cap slippage on swap quote requests
Whenslippage_bps is omitted on the intent, accessing activity.params.slippage_bps fails with
FieldNotUsed rather than evaluating as zero.
Restrict quote output tokens to an allowlist
Require organization-controlled destinations on cross-chain quotes (V2)
Swap execution
Deny execution into unapproved output assets
Require two approvers for large trades (base units)
Compareinput_amount as a uint in token base units.
Deny sponsored swap execution
Restrict execute destination (V3)
Earn deposits and withdrawals
Allow deposits only on approved chains
Restrict deposits to approved wrappers
EVM wrapper addresses in policies should use lowercase0x hex to match normalized
activity.params.wrapper_address values.
Deny sponsored Earn deposits
Cap deposit size (base units)
activity.params.assets compares as a uint in raw on-chain
units, like swap input_amount.
Gate full-position withdrawals
amount_value is a string; the API accepts the literal MAX to withdraw an entire position.
Earn administration
Cap client fee on wrapper deployment
client_fee_bps is exposed as a uint in whole basis points
(the API intent carries a decimal string). client_fee_wallet remains a string; allowlist it for
treasury controls.