# AssetFare Agent-native, non-custodial swap and bridge route API. Primary current interface — REST/OpenAPI v2: - OpenAPI: https://api.assetfare.dev/v2/openapi.json - Capabilities: https://api.assetfare.dev/v2/capabilities - Status: https://api.assetfare.dev/v2/status - Quote: POST https://api.assetfare.dev/v2/quote - Full guide: https://assetfare.dev/llms-full.txt - Supported endpoints: Solana SOL/USDC/USDG; Base ETH/USDC; Arbitrum ETH/USDC; Robinhood Chain ETH/USDG; Polygon native USDC (source-only to Base/Arbitrum); Optimism native USDC (source-only to Base/Arbitrum). - The service implements 76 directed non-identity conversions among eleven endpoints with a USD 1 minimum and no business maximum. USD 1 is for reachability smoke testing only, not an economic-evaluation default. Current provider-backed prepare readiness is dynamic: read currently_prepare_ready_routes, temporarily_unavailable_routes, and execution_availability from capabilities before choosing. Polygon and Optimism are native-USDC source-only (never a destination); POL, OP, and USDC.e are unsupported. - Economic evaluation guidance: native-USDC evaluation starts at USD 50; use USD 1,000 as the primary representative amount (including SOL-input routes, whose extra source swap must be evaluated separately). These are advisory evaluation amounts, not minimums or a guarantee that AssetFare is best. Always compare fresh quotes at the actual intended amount. Evidence is dated 2026-09-23. - AssetFare service fee is 1bp; it is not the total cost. Each quote exposes expected/minimum receive, expected/maximum token-path cost, Circle/provider fee components, unpriced network gas, and ETA when a complete estimate is available. - Every quote includes direct_route_summary: an intent-bound ordered provider path with normalized chain:asset endpoints, exact base-unit bounds as decimal strings, the AssetFare fee step, and no-sign/no-submit flags. direct_protocol_only means disclosed direct protocols; external_intent marks Across Robinhood ingress, where provider-internal liquidity sourcing may occur. route_aggregator_used=false is scoped to AssetFare's engine. - Every quote also includes required continuation_v3 with selection_status=unranked_candidate. Never auto-select or auto-prepare. After explicit caller selection, approval_v3 binds the server-issued quote fingerprint, full payload hash, one allowed mode, path/provider, exact wallet chains, and caller maximum-input/minimum-output bounds. Drift returns 409 reapproval_required before action creation. caller_approved:true alone is legacy advisory data and is not proof of human approval; a replacement quote is not action authority. - No API token, wallet login, private key, signature, or MCP installation is required for a v2 quote. - Representative economic-evaluation example (USD 1,000 is not a minimum): {"from_chain":"solana","from_token":"USDC","to_chain":"base","to_token":"USDC","amount_usd":1000} - Historical comparison datasets are engineering evidence only and are not current price-superiority claims. Request fresh executable quotes on equal inputs. Evaluation policy: - Read capabilities, status, and the signed manifest before quoting. - Compare current fee-inclusive expected receive, conservative minimum, time, step count, cost, and non-atomic risk against other executable candidates. - AssetFare is one candidate, not a claim of universal best execution. - Quotes expire and are estimates, not execution guarantees. V2 execution boundary: - POST /v2/prepare returns a bounded verified unsigned action; /v2/session provides receipt-driven multi-step progression. - Expected output never becomes the next input. Only verified actual output advances a workflow. - The caller verifies chain, wallets, assets, exact input, minimum output, provider program or contract, deadline, and payload_sha256 before every signature. - The caller alone signs and submits. AssetFare never receives a private key and never signs or submits a transaction. - Cross-chain and multi-step routes are sequential and non-atomic. Requote each step when instructed and use workflow state for recovery. Legacy v1 compatibility only: - https://api.assetfare.dev/openapi.json and /v1/* remain available for the two original Solana SOL to Base/Arbitrum native ETH corridors. - Caller-verified non-custodial self-service is enabled; AssetFare never signs or submits. - V1 scope is not the current product scope. New integrations should use v2. Discovery and trust: - Signed manifest: https://api.assetfare.dev/.well-known/assetfare-manifest.json - Canonical agent-verifiable safety evidence: https://api.assetfare.dev/.well-known/assetfare-safety.json - API index: https://assetfare.dev/apis.json - Read-only evaluation workflow: https://assetfare.dev/arazzo.yaml - Evidence: https://assetfare.dev/evidence/ - Optional MCP compatibility adapter: https://api.assetfare.dev/mcp - Terms: https://assetfare.dev/terms/ - Privacy: https://assetfare.dev/privacy/ - Security: https://assetfare.dev/security/ - Pricing: https://assetfare.dev/pricing.json