Skip to content

The selectors and event topic0 values on this page are the V6 ABI for IntentSettlerV3 and IntentLensV3.

(O) below abbreviates the complete IntentOrder tuple:

(address owner,address recipient,address tokenIn,uint256 amountIn,
address tokenOut,uint256 startAmountOut,uint256 endAmountOut,
uint256 startTime,uint256 decayEndTime,uint256 endTime,
bytes32 appData,uint256 nonce)
Selector Signature
0x294470ec announce((O),bytes)
0xf1bb3cfa fill((O),bytes,address,bytes)
0xfe0abf21 cancel((O))
0x7bf0397f cancelSigned((O),uint256,bytes)
0xd94a1dc6 orderHash((O))
0x78d74226 orderDigest((O))
0x2ac12622 cancelled(bytes32)
0x288cdc91 filled(bytes32)
0xb703f3c4 INTENT_ORDER_TYPEHASH()
0x28c89130 CANCEL_INTENT_TYPEHASH()
0x84b0196e eip712Domain()
Contract Selector Signature
IntentLensV3 0xdf99cf18 preview((O))
IntentLensV3 0xa47cbbe2 previewMany((O)[])
IntentLensV3 0xab221a76 settler()
Event signature topic0
IntentAnnounced(bytes32,address,bytes32,bytes,bytes) 0x6b7c7ccca26b7cb9642ad63c79054835d7bbfb9801b6c6c642a3ba88ece2350f
IntentFilled(bytes32,address,address,address,address,uint256,uint256,uint256,uint256,uint256) 0x9e24c3cf62be0eab4747b63a88ac76a698ffb40e8c7821be18e4f07cd72ccbd5
IntentCancelled(bytes32,address,address) 0x318ecdc0215a0703e460331f2f5ff7f65ba21a69045f200c8f5dd60b9f56a5fb
Event Indexed topics Data fields
IntentAnnounced id, owner, appData bytes order, bytes auth
IntentFilled id, owner, solver recipient, caller, amountIn, requiredOut, fee, receivedOut, aboveFloor
IntentCancelled id, owner, caller none

IntentAnnounced.order is abi.encode(IntentOrder). It is complete and self-describing; individual order fields are intentionally not duplicated in the event. In V6, auth is the authorization envelope, requiredOut is gross (floor plus fee), fee is the protocol fee paid by the filler on top, and aboveFloor is the amount received above gross requiredOut and sent to the signed recipient.

Error Signature
InvalidSignature InvalidSignature()
OrderCancelled OrderCancelled()
OrderAlreadyFilled OrderAlreadyFilled()
OrderExpired OrderExpired()
ZeroSolver ZeroSolver()
NotOrderOwner NotOrderOwner()
SlippageExceeded SlippageExceeded(uint256 received,uint256 required)
InsufficientRecipientDelivery InsufficientRecipientDelivery(uint256 delivered,uint256 required)
Reentrancy Reentrancy()
InexactInputReceived InexactInputReceived(uint256 received,uint256 expected)
InexactOutputDelivered InexactOutputDelivered(uint256 delivered,uint256 sent)
InexactFeeDelivered InexactFeeDelivered(uint256 delivered,uint256 fee)
SettlerBalanceChanged SettlerBalanceChanged(address token,uint256 endedWith,uint256 startedWith)
ProxyNotDeployed ProxyNotDeployed(address owner)
OrderKilledByOwner OrderKilledByOwner(bytes32 id)
ZeroFeeRecipient ZeroFeeRecipient()
ZeroSystemFiller ZeroSystemFiller()
InvalidOrder InvalidOrder()
SameToken SameToken()
NativeNotSupportedInOrder NativeNotSupportedInOrder()

The last three errors come from IntentLib. For how these calls are assembled, see sign an order and fill an order.