{"uid":"cap_tLDXUVDZMLJkz5cdXc5Mf","slug":"x402-trading-useotto-xyz-9a241d7d","name":"Otto Multi-Chain Portfolio Balances","description":"Multi-chain portfolio with token balances and yield positions across Safe accounts","url":"https://x402-trading.useotto.xyz/portfolio","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["userId"],"properties":{"userId":{"type":"string","description":"EVM wallet address (0x...)"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"status":{"type":"string"},"portfolio":{"type":"object"}}}}}}},"responseSchema":null,"example":{"request":{"input":{"type":"http","method":"GET","queryParams":{"userId":"0x1234567890abcdef1234567890abcdef12345678"}}},"response":{"status":"success","portfolio":{"userId":"0x1234567890abcdef1234567890abcdef12345678","success":true,"summary":{"idleCashUSD":0,"totalValueUSD":0,"yieldTotalValueUSD":0},"safeAddresses":[],"butler_recommendations":{"note":"This portfolio shows on-chain wallet balances and yield protocol positions (Aave V3 on all chains, Morpho on Ethereum/Base/Arbitrum/Polygon).","available_actions":["Use earn_yield to deposit idle tokens into yield protocols (Aave V3 or Morpho)","Use earn_yield with action: \"withdraw\" to redeem yield positions back to underlying tokens","Use swap_tokens to exchange tokens","Use bridge to move funds across chains","Use getHyperliquidAccount to view perpetual trading positions","Use getYieldMarkets to see all available yield opportunities across Aave and Morpho"],"hyperliquid_positions":"For Hyperliquid perpetual futures positions, use getHyperliquidAccount resource separately.","critical_yield_warning":["NEVER use withdraw job for yield positions - vault tokens (aUSDC, COUSDC) will be REJECTED","ALWAYS use earn_yield with action: \"withdraw\" to redeem yield positions","Yield positions shown in yieldPositions are NOT withdrawable as regular tokens"]}},"powered_by":"[Powered by $OTTO AI | @useOttoAI]"}},"exampleRequest":{"userId":"0x1234567890abcdef1234567890abcdef12345678"},"tags":["x402"],"displayCostAmount":"0.001000","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","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.001000/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_A_DRe95gqTw_TVviZGMsz","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns token balances and yield positions across Safe accounts on multiple chains for a given EVM wallet address","exampleAgentPrompt":"Show me the full portfolio for wallet 0x1234567890abcdef1234567890abcdef12345678 — I want to see all token balances and yield positions across my Safe accounts on every chain.","exampleUseCases":[{"title":"DeFi yield farming portfolio overview","prompt":"Can you pull up my complete DeFi portfolio across all my Safe accounts? I want to see everything I'm holding and all my active yield positions like Aave and Morpho — across Ethereum, Base, and Arbitrum."},{"title":"Multi-chain asset allocation check","prompt":"Show me a breakdown of all my token balances across my Safe multi-sig wallets on every chain I use. I need to understand where my assets are distributed and what I'm currently staking or lending."},{"title":"Total portfolio value assessment","prompt":"Give me a snapshot of my entire Safe account portfolio including all tokens and yield positions across chains. I want to see my complete net worth and what percentage is in active DeFi positions versus just sitting as balances."}],"resultDescription":"A portfolio object containing token balances and yield positions (e.g. Aave V3, Morpho) aggregated across the user's Safe accounts on multiple chains, along with a status field indicating success.","failureModes":["Missing or invalid userId query parameter returns an error","Non-EVM or malformed wallet address (not 0x...) causes a validation failure","Wallet address with no associated Safe accounts returns an empty portfolio","Network timeout or upstream chain RPC failure may return partial or error response","Payment not attached or insufficient USDC balance results in 402 Payment Required"],"whenToPreferThis":"Use this endpoint when you need a comprehensive multi-chain view of a user's Safe account holdings including both spot token balances and active DeFi yield positions. Prefer this over single-chain balance endpoints or exchange-specific endpoints when the user wants a holistic DeFi portfolio snapshot.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T12:43:19.398Z","isFirstParty":false}