S2S Portfolio
Token balances of the user's wallet
Refreshes the balances from the on-chain indexer before answering, and registers the wallet for transaction webhooks if it is not yet — a partner has no onboarding step to do either from. Both are rate-limited per user and best-effort; sync reports what actually happened, so a failed there means the balances below are the last ones stored.
query Parameters
userIdPublic uuid of the partner user whose portfolio is read.
Token balances of the user's wallet › Responses
Indexed transfers touching the wallet
Newest first, and cursor-paged backwards: pass the createdAt of the last row as dateFrom for the next page. Runs the same sync and subscribe step as the balances endpoint. Only transfers indexed since the wallet was subscribed appear — this is not a chain backfill.
query Parameters
userIdPublic uuid of the partner user whose portfolio is read.
dateFromCursor: returns transfers indexed strictly before this instant. Defaults to now — pass the createdAt of the last row to page back.
limitIndexed transfers touching the wallet › Responses
Portfolio value over time
Newest first, defaulting to the last 7 days. Points are written by the valuation job rather than on request, so the series is sparse and its cadence is not part of the contract.
query Parameters
userIdPublic uuid of the partner user whose portfolio is read.
dateFromReturns snapshots taken after this instant. Defaults to 7 days ago.
limitPortfolio value over time › Responses
Newest first.
Open staking positions
One entry per pool the user is currently staked into, priced at the last valuation. amount is in wrap-token (share) units — the units the unstake endpoint takes.
query Parameters
userIdPublic uuid of the partner user whose portfolio is read.
Open staking positions › Responses
Open stock positions
One entry per stock the user currently holds, priced when you ask rather than at the last valuation. amount is in share units — the units the sell endpoint takes. Carries the market session, because a PnL that has not moved since Friday is a shut market rather than a stale read.
query Parameters
userIdPublic uuid of the partner user whose portfolio is read.
