Skip to content

The selectors and event topic0 values on this page are the verified current ABI for IntentSettlerV1, IntentLens, IntentSettlerResolver, and the Permit2 nonce invalidation backstop.

(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))
0x9946e08f permitDigest((O))
0x2ac12622 cancelled(bytes32)
0x8d18730e INTENT_WITNESS_TYPEHASH()
0x28c89130 CANCEL_INTENT_TYPEHASH()
0x6afdd850 PERMIT2()
0x84b0196e eip712Domain()
Contract Selector Signature
IntentLens 0xdf99cf18 preview((O))
IntentLens 0xa47cbbe2 previewMany((O)[])
IntentLens 0xab221a76 settler()
IntentSettlerResolver 0xe4056186 resolve(bytes)
IntentSettlerResolver 0x67aad013 encodePayload((address,(O),bytes,bytes))
Permit2 0x3ff9dcb1 invalidateUnorderedNonces(uint256,uint256)
Event signature topic0
IntentAnnounced(bytes32,address,bytes32,bytes,bytes) 0x6b7c7ccca26b7cb9642ad63c79054835d7bbfb9801b6c6c642a3ba88ece2350f
IntentFilled(bytes32,address,address,address,address,uint256,uint256,uint256,uint256) 0x3925fc820c061ee4e910271ddac8e8269023cabd3c8a2c1e88c05ef92b29e386
IntentCancelled(bytes32,address,address) 0x318ecdc0215a0703e460331f2f5ff7f65ba21a69045f200c8f5dd60b9f56a5fb
Event Indexed topics Data fields
IntentAnnounced id, owner, appData bytes order, bytes permit2Sig
IntentFilled id, owner, solver recipient, caller, amountIn, requiredOut, 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. IntentFilled.aboveFloor is the amount received above the required floor and sent to the signed recipient.

Error Signature
InvalidSignature InvalidSignature()
OrderCancelled OrderCancelled()
OrderExpired OrderExpired()
OrderNotYetStarted OrderNotYetStarted()
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)
SettlerBalanceChanged SettlerBalanceChanged(address token,uint256 endedWith,uint256 startedWith)
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.