{"openapi":"3.1.0","info":{"title":"Routheus","description":"Live DEX token prices and best-route swap quotes across 13 EVM chains (Base, Ethereum, Arbitrum, BSC, Optimism, Polygon and more). Sub-millisecond answers from our own real-time pool-state engine, not a proxy. Executable swap calldata (Permit2), simulation-verified quotes, chained-state arb quoting, token metadata, token search, DEX pools. For AI agents: pay per call in USDC on Base via x402, no API keys, no subscription. From $0.001 per call; failed simulations and no-route answers are free.","version":"1.0.0"},"servers":[{"url":"https://routheus.xyz"}],"paths":{"/{chain}/api/router/dag-quote":{"get":{"summary":"Best-route DEX swap quote (optionally with executable calldata, onchain simulation, or chained-state arb quoting)","x-payment-info":{"mode":"dynamic","currency":"USD","min":"0.002","max":"0.9"},"parameters":[{"name":"chain","in":"path","required":true,"schema":{"type":"string","enum":["arb","ava","base","ber","bsc","eth","gno","hem","hyp","opt","pol","son","uni"]},"description":"Chain slug (see /chain-peers)"},{"name":"token_in","in":"query","required":true,"schema":{"type":"string"},"description":"Input token address (0x…)"},{"name":"token_out","in":"query","required":true,"schema":{"type":"string"},"description":"Output token address (0x…)"},{"name":"amount_in","in":"query","required":false,"schema":{"type":"string"},"description":"Input amount in atomic units"},{"name":"amounts_in","in":"query","required":false,"schema":{"type":"string"},"description":"Comma-separated batch of input amounts (max 50, 10% batch discount)"},{"name":"to","in":"query","required":false,"schema":{"type":"string"},"description":"Swap recipient — presence triggers calldata generation"},{"name":"with_permit2_data","in":"query","required":false,"schema":{"type":"string"},"description":"true = also return Permit2 calldata template + signature offsets"},{"name":"simulate","in":"query","required":false,"schema":{"type":"string"},"description":"true = amount_out becomes the onchain-simulated result (higher price)"},{"name":"quote_on_top_of_amounts","in":"query","required":false,"schema":{"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)"},{"name":"slippage_bps","in":"query","required":false,"schema":{"type":"string"},"description":"Slippage tolerance in basis points"}],"responses":{"200":{"description":"Route with amount_out, per-leg hops, gas estimate; optional tx/tx_permit2/simulation"},"402":{"description":"Payment required (x402 v1). Body contains `accepts` payment requirements; retry with X-PAYMENT header.","content":{"application/json":{}}}}}},"/{chain}/api/tokens/metadata":{"get":{"summary":"Token metadata: decimals, name, symbol, balance storage slot (cache-only)","x-payment-info":{"mode":"fixed","currency":"USD","amount":"0.001"},"parameters":[{"name":"chain","in":"path","required":true,"schema":{"type":"string","enum":["arb","ava","base","ber","bsc","eth","gno","hem","hyp","opt","pol","son","uni"]},"description":"Chain slug (see /chain-peers)"},{"name":"token","in":"query","required":true,"schema":{"type":"string"},"description":"Token address (0x…)"}],"responses":{"200":{"description":"Metadata or {ok:false} for unknown tokens (not charged)"},"402":{"description":"Payment required (x402 v1). Body contains `accepts` payment requirements; retry with X-PAYMENT header.","content":{"application/json":{}}}}}},"/{chain}/api/tokens/search":{"get":{"summary":"Search indexed tokens by address, symbol or name","x-payment-info":{"mode":"fixed","currency":"USD","amount":"0.003"},"parameters":[{"name":"chain","in":"path","required":true,"schema":{"type":"string","enum":["arb","ava","base","ber","bsc","eth","gno","hem","hyp","opt","pol","son","uni"]},"description":"Chain slug (see /chain-peers)"},{"name":"query","in":"query","required":true,"schema":{"type":"string"},"description":"Address, symbol or name fragment"},{"name":"page","in":"query","required":false,"schema":{"type":"string"},"description":"Page number"},{"name":"page_size","in":"query","required":false,"schema":{"type":"string"},"description":"Page size"}],"responses":{"200":{"description":"Paginated token matches with pool counts"},"402":{"description":"Payment required (x402 v1). Body contains `accepts` payment requirements; retry with X-PAYMENT header.","content":{"application/json":{}}}}}},"/{chain}/api/pools/list":{"get":{"summary":"List/filter DEX pools (by token, kind, factory; optional live state)","x-payment-info":{"mode":"fixed","currency":"USD","amount":"0.002"},"parameters":[{"name":"chain","in":"path","required":true,"schema":{"type":"string","enum":["arb","ava","base","ber","bsc","eth","gno","hem","hyp","opt","pol","son","uni"]},"description":"Chain slug (see /chain-peers)"},{"name":"token","in":"query","required":false,"schema":{"type":"string"},"description":"Filter: pools containing this token"},{"name":"tokens","in":"query","required":false,"schema":{"type":"string"},"description":"Filter: comma-separated token pair"},{"name":"kind","in":"query","required":false,"schema":{"type":"string"},"description":"Filter: pool kind"},{"name":"include_state","in":"query","required":false,"schema":{"type":"string"},"description":"true = include live pool state"},{"name":"page","in":"query","required":false,"schema":{"type":"string"},"description":"Page number"},{"name":"page_size","in":"query","required":false,"schema":{"type":"string"},"description":"Page size"}],"responses":{"200":{"description":"Paginated pool list"},"402":{"description":"Payment required (x402 v1). Body contains `accepts` payment requirements; retry with X-PAYMENT header.","content":{"application/json":{}}}}}}}}