What you will learn
- The structure of a TxIntent v1 document
- All five action types and their fields
- Constraint and metadata fields
- How canonical hashing works for integrity binding
Overview
A TxIntent is a JSON document that describes a desired crypto operation. Agents construct TxIntents; ISCL Core interprets and executes them. The schema uses additionalProperties: false at every level — no undocumented fields are accepted.
Top-level structure
Required fields
Optional fields
Action types
transfer
Transfer ERC-20 tokens to a recipient.
transfer_native
Transfer native ETH (no calldata).
approve
Set ERC-20 spending allowance for a contract.
swap_exact_in
Swap an exact input amount for a minimum output amount.
swap_exact_out
Swap a maximum input amount for an exact output amount.
swap_exact_out does not support the "1inch" provider. The 1inch API v6 does not offer exact-output swaps. These always use Uniswap V3.
Known router addresses
Swap router fields are validated against known addresses per chain:
Canonical hashing
TxIntents are canonicalized using JCS (JSON Canonicalization Scheme) and hashed with keccak256. The resulting hash is used for:
- Approval token binding — the token is tied to a specific intent hash
- Integrity verification — modifying any field after approval invalidates the token
Next steps