{"uid":"cap_P1PssA8hLVsyNoQ1-VTgv","slug":"routheus-dag-quote-multichain-dex-swap-router-2dc1d07a","name":"Routheus DAG Quote — Multichain DEX Swap Router","description":"Routheus: live DEX token prices and best-route swap quotes from a real-time pool-state engine, executable routes with calldata (Permit2), simulation-verified outputs, token metadata, search and pool data on 13+ EVM chains. Pay per call in USDC via x402 — no API keys, no subscription.","url":"https://routheus.xyz/%7Bchain%7D/api/router/dag-quote?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","required":["token_in","token_out"],"properties":{"to":{"type":"string","description":"Swap recipient — presence triggers calldata generation"},"simulate":{"type":"string","description":"true = amount_out becomes the onchain-simulated result (higher price)"},"slippage":{"type":"string","description":"Slippage tolerance in percent (alternative to slippage_bps)"},"token_in":{"type":"string","description":"Input token address (0x…)"},"amount_in":{"type":"string","description":"Input amount in atomic units"},"token_out":{"type":"string","description":"Output token address (0x…)"},"amounts_in":{"type":"string","description":"Comma-separated batch of input amounts (max 50, 10% batch discount)"},"slippage_bps":{"type":"string","description":"Slippage tolerance in basis points"},"with_permit2_data":{"type":"string","description":"true = also return Permit2 calldata template + signature offsets"},"quote_on_top_of_amounts":{"type":"string","description":"Comma-separated prior in-transit amounts (max 8) applied to pool state before the final quote — arbitrage product, premium price (simulate is ignored on these requests)"}}},"responseSchema":{"type":"object","required":["ok"],"properties":{"ok":{"type":"boolean"},"tx":{"type":"object","properties":{"to":{"type":"string"},"data":{"type":"string"},"value":{"type":"string"},"chainId":{"type":"integer"}},"description":"Ready-to-send transaction (present with to=)"},"batch":{"type":"boolean","description":"true for amounts_in batches"},"error":{"type":"string","description":"Present when ok=false (never charged)"},"route":{"type":"array","items":{"type":"object","properties":{"hops":{"type":"array","items":{"type":"object","properties":{"pool":{"type":"string","description":"Pool contract address / id"},"type":{"type":"string","description":"Pool kind, e.g. UniswapV3"},"token_in":{"type":"string"},"token_out":{"type":"string"}}}},"share":{"type":"number"},"amount_in":{"type":"string"},"amount_out":{"type":"string"}}},"description":"Proportional legs (single route = one leg with share 1.0)"},"fee_bps":{"type":"integer"},"results":{"type":"object","description":"Batch mode: per-amount responses keyed by amount","additionalProperties":true},"chain_id":{"type":"integer"},"warnings":{"type":"array","items":{"type":"string"}},"amount_in":{"type":"string","description":"Atomic units"},"amount_out":{"type":"string","description":"Atomic units; with simulate=true this IS the onchain-simulated result"},"simulation":{"type":"object","properties":{"success":{"type":"boolean"},"gas_used":{"type":"integer"},"amount_out":{"type":"string"}}},"tx_permit2":{"type":"object","properties":{"to":{"type":"string"},"data":{"type":"string"},"value":{"type":"string"},"nonce_offset":{"type":"integer"},"signature_length":{"type":"integer"},"signature_offset":{"type":"integer"},"permit_deadline_offset":{"type":"integer"}},"description":"Permit2 calldata template + byte offsets for splicing nonce/deadline/signature"},"gas_estimate":{"type":"integer"},"min_amount_out":{"type":"string","description":"What the swap calldata enforces (local quote minus slippage); present with tx"},"on_top_of_amounts":{"type":"array","items":{"type":"string"}}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_PPQifER4HClWdS08OQ7Yk","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns best-route swap quotes with optional executable calldata (including Permit2) across 13+ EVM chains using real-time pool state, with optional onchain simulation","exampleAgentPrompt":"What's the best swap route and expected output if I trade 1000 USDC (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) for WETH (0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2) on Ethereum mainnet, with 0.5% slippage, and generate the Permit2 calldata so I can sign and send it?","exampleUseCases":[{"title":"Pre-trade price check for DeFi bot","prompt":"Give me a Routheus quote for swapping 500 USDC to DAI on Arbitrum — just the expected output amount and the route, no calldata needed yet."},{"title":"Executable swap with Permit2 for wallet app","prompt":"I want to swap 0.5 WETH for USDC on Base — give me the full Permit2 transaction calldata I can sign and send, with 1% slippage tolerance and my address 0xAbCd...1234 as the recipient."},{"title":"Arbitrage batch pricing across amounts","prompt":"Batch quote swapping 100, 500, 1000, and 5000 USDC to WETH on Optimism so I can find the best size for my arbitrage — use onchain simulation for accurate amounts."}],"resultDescription":"Returns a JSON object with ok=true on success, including: the optimal route broken into proportional legs with pool addresses and hop details, amount_out in atomic units (onchain-simulated if simulate=true), gas_estimate, fee_bps, optional executable tx or tx_permit2 calldata when recipient is specified, min_amount_out enforced by calldata, and warnings. Batch mode returns per-amount results keyed by input amount. Returns ok=false with an error string on failure (no charge).","failureModes":["Token pair not found or no liquidity path — ok=false with error string","Invalid token address format — ok=false with validation error","Chain not supported — ok=false with error","amount_in missing or malformed atomic units — ok=false","simulate=true timeout or RPC failure — may fall back or error","Slippage parameter conflict (both slippage and slippage_bps supplied) — unexpected behavior","Batch exceeds 50 amounts — likely rejected or truncated","x402 payment failure — 402 response before quote is returned"],"whenToPreferThis":"Choose Routheus when you need real-time, multi-hop DEX swap quotes on EVM chains without API key registration, especially when you want executable Permit2 calldata ready to sign and send, onchain simulation-verified output amounts, or batch pricing across multiple input amounts. Prefer it over static price feeds when you need actual route-aware output accounting for pool liquidity and fees. Its pay-per-call USDC model via x402 makes it ideal for low-frequency agents or automation that shouldn't pay subscription costs.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-12T06:30:09.534Z","isFirstParty":false,"canonicalSlug":"routheus-dag-quote-multichain-dex-swap-router-2dc1d07a"}