ActionSet
Transaction calldata and required approvals returned by action endpoints.
transactions object[]required
Pre-trade setup transactions (e.g. e-mode switch, collateral enable). Execute these before the main swap. Empty when no setup is needed.
Target contract address
0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2Encoded calldata
0x617ba037000000000000000000000000c02aaa39b2ETH value to send with the transaction
0Human-readable label. For alternatives, this is the aggregator name (e.g. "Paraswap"). For transactions, describes the setup action (e.g. "Switch e-mode to 1").
alternatives object[]
DEX aggregator swap transactions sorted by best output (descending). Each entry's description is the aggregator name. The client should pick one to execute. Present on loop action endpoints.
Target contract address
0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2Encoded calldata
0x617ba037000000000000000000000000c02aaa39b2ETH value to send with the transaction
0Human-readable label. For alternatives, this is the aggregator name (e.g. "Paraswap"). For transactions, describes the setup action (e.g. "Switch e-mode to 1").
permissions object[]nullable
Approval/delegation transactions that must execute before both transactions and alternatives. Includes ERC20 allowances (targeting the composer contract) and lender borrow/withdrawal delegations (targeting the lending protocol contract directly). Filtered against on-chain state so only missing approvals are returned. Null when no approvals are needed.
Target contract address
Encoded calldata
ETH value
0Human-readable description of the approval (e.g. "Approve borrow for AAVE_V3", "Approve ERC20")
ERC-20 approve spender (x-chain permissions). Match it against the selected quote's approvalTarget — several bridges can share one spender, so do not match by description.
{
"transactions": [
{
"to": "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",
"data": "0x617ba037000000000000000000000000c02aaa39b2",
"value": "0",
"description": "string"
}
],
"alternatives": [
{
"to": "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",
"data": "0x617ba037000000000000000000000000c02aaa39b2",
"value": "0",
"description": "string"
}
],
"permissions": [
{
"to": "string",
"data": "string",
"value": "0",
"description": "string",
"spender": "string"
}
]
}