Get swap or bridge quotes with execution plans
get_quotes_with_plansA quote, execution plan, simulation or wallet approval is not permission to trade. Robinhood Stock Tokens are tokenised debt securities subject to issuer restrictions and applicable law. Before requesting signatures or submitting approvals or trades, establish the user's relevant jurisdiction and eligibility, including location, residence or entity incorporation, US-person status under Regulation S, any person for whose account or benefit the transaction is made, and issuer Prohibited Investor restrictions. Never infer these facts from an agent or server IP. If required facts or asset-policy coverage are unknown, do not proceed. Only the user or an authorized representative of the actual investor may provide an explicit factual attestation; an agent must not attest on their behalf. A known prohibited fact cannot be overridden by attestation. An attestation is not a license, legal exemption or substitute for required screening. Keep the attestation client-side; do not send it to the quote API or MCP server. No blanket disposal exemption applies. Quote EVM swaps: Ekubo/0x same-chain; Across/LayerZero/LI.FI cross-chain. For plans, supply sender and exactly one protection: whole slippage_bps or exact-input max_output_loss in output base units. Omit all three for indicative quotes. Pass the chosen execution.execution_plan_reference unchanged to wallet simulation; show that result and send the same simulation for owner authorization. Re-quote only after revert, expiry or changed request; never retry reverted bytes or widen protection. For all/max swaps use the wallet's exact balance. Compare amount_out and native_fee (LayerZero charges it separately). Track LayerZero/LI.FI delivery with get_value_transfer_status. unavailable_sources reports provider failures; execution_unavailable reports plan failures.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Base units (positive decimal integer) | |
| sender | No | Transaction sender; pass with exactly one of slippage_bps or max_output_loss for plans (address) | |
| chain_id | Yes | EVM chain ID | |
| token_in | Yes | Raw EVM address or CAIP-10 eip155:<chain_id>:<address>; all-zeroes denotes the native token | |
| recipient | No | Defaults to sender (address) | |
| token_out | Yes | Raw EVM address or CAIP-10 eip155:<chain_id>:<address>; all-zeroes denotes the native token | |
| quote_type | Yes | ||
| slippage_bps | No | Whole-bps calldata bound: 0.1% = 10. With sender supply this OR max_output_loss. Honor user preference; size near gas value / notional * 10,000. For positive sub-bps budgets use max_output_loss, not 0 or 1 bps. No generic 50 bps default. After slippage failure re-quote, never widen or retry reverted bytes. | |
| max_output_loss | No | Exact-input loss budget from quoted output, output-token base units as a decimal integer string; requires sender, omit slippage_bps. Ekubo: exact subtraction. 0x: two quotes, floor budget to whole ppm, verify final minBuyAmount; positive budgets below 1 ppm fail, never become zero. Others unsupported. Convert gas value to output base units rounding down; never widen to 1 bps. | |
| include_raw_quotes | No | Echo raw provider responses; only to diagnose a provider | |
| destination_chain_id | No | Destination chain; defaults to chain_id for a same-chain swap | |
| swap_deadline_minutes | No | Ekubo router route deadline; default 30 |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| quotes | No | ||
| jurisdiction | No | jurisdiction metadata (ekubo-token-jurisdictions-v2): coverage, execution_hold, restricted_jurisdictions, per-asset classification |