get_multi_input_quote
Consolidate tokens from multiple origin chains into a single destination chain and token. Specify origins (chain, token, amount) and destination for portfolio rebalancing.
Instructions
Get a quote for consolidating tokens from MULTIPLE origin chains into a single destination (e.g. USDC from Ethereum + Arbitrum + Optimism → USDC on Base).
Use this for portfolio consolidation, rebalancing, or collecting scattered funds. Each origin specifies its own chain, token, and amount. All origins settle to one destination chain and token.
Amounts must be in the token's smallest unit (wei, satoshis, lamports). Examples: 1 ETH = "1000000000000000000" (18 decimals), 1 USDC = "1000000" (6 decimals), 1 BTC = "100000000" (8 decimals), 1 SOL = "1000000000" (9 decimals). Use convert_amount or get_supported_tokens to look up decimals. Chain IDs can be numbers (8453) or names ('base', 'ethereum', 'arb', 'bitcoin', 'solana').
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sender | Yes | Sender wallet address (must hold funds on all origin chains). | |
| origins | Yes | Array of origin sources (minimum 2). Each specifies a chain, token, and amount to consolidate. | |
| partial | No | Allow partial fills — if one origin fails, others still execute. | |
| recipient | No | Recipient wallet address. Defaults to sender. | |
| tradeType | No | EXACT_INPUT (default): origin amounts are inputs. EXPECTED_OUTPUT: total amount is desired output. | EXACT_INPUT |
| includeSteps | No | Include raw transaction steps for signing. Omit to save tokens. | |
| destinationChainId | Yes | Destination chain ID or name (e.g. 8453, 'base'). | |
| destinationCurrency | Yes | Destination token address or symbol (e.g. "USDC", "ETH"). For native tokens use: EVM "0x0000000000000000000000000000000000000000", Solana "11111111111111111111111111111111", Bitcoin "bc1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmql8k8", Hyperliquid "0x00000000000000000000000000000000", Lighter "0". For other tokens, use the contract/mint address or look up via get_supported_tokens. |