tRPC Strategy Instances API
tRPC Endpoints
tRPC Strategy Instances API
Portfolio dashboard and legacy strategy-instance read surfaces.
POST
tRPC Strategy Instances API
The
Each
strategyInstances.* namespace contains legacy strategy-instance reads and
the web dashboard’s normalized portfolio payload.
- Base endpoint:
POST /v1/trpc - Namespace:
strategyInstances.* - Auth: wallet session
Dashboard Normalized Data
strategyInstances.getDashboardNormalizedData returns a normalized portfolio
payload for dashboard views. Callers can tune each subgraph through include so
portfolio lists, positions, assets, prices, vaults, and dashboard-only summaries
can be fetched independently. By default, assetPrices, assets,
portfolioAssetBalances, and portfolioInstances are included, while
dashboardAssetSummaries, performanceSeries, positions, and vaults are
off until requested.
includeInvestingAccount defaults to false. Dashboard shells that need the
owner’s active Investing Account in the initial normalized seed should set it to
true; this keeps the Investing Account in the same cached payload as the rest
of the owner dashboard data.
include.dashboardAssetSummaries is off by default. When true, the response
includes dashboardAssetSummaries, a dashboard-owned read model that groups
held route assets by canonical crypto asset when the asset-taxonomy graph has an
explicit relationship. Routes that do not resolve to a canonical group remain
concrete rows.
dashboardAssetSummaries[] row has:
id: stable row id scoped to portfolio and canonical/concrete assetportfolioId: owning portfolio iddisplayKind:canonicalwhen grouped by taxonomy, otherwiseconcreteassetCanonicalId: canonical asset id for canonical rowssourceAssetIds: concrete held asset ids represented by the summarysourcePositionIds: source position rows represented by the summarydisplayName,symbol,iconUrl: display identity owned by the backendquantity: summed display quantity as a string, ornullwhen it cannot be safely representedquantityDisplay: the summed quantity string when available, otherwise a position-count labelvalueUsd,priceUsd,priceChange1hPercent,priceChange24hPercent,marketCapUsd: dashboard valuation and market data fieldschainCount,positionCount: count metadata for grouped rowsupdatedAt: latest source update timestamp in milliseconds
dashboardAssetSummaries directly when present.
Portfolio detail views should continue using concrete positions/assets and
should not use this dashboard summary model.
Top Performing Portfolios
strategyInstances.getTopPerformingPortfolios returns the ranked portfolio rows
used by the Explore top-portfolios rail. Each row includes the strategy blueprint
that created the displayed portfolio and the canonical strategy blueprint route
id that clients should use when linking to the strategy page.
Relevant navigation fields:
blueprint_id: strategy blueprint id attached to the displayed portfoliocanonical_strategy_blueprint_id: canonical strategy blueprint id for/strategy/:blueprintIdlinksforked_from_blueprint_id: parent blueprint id when the row belongs to a forked strategy, otherwisenull
canonical_strategy_blueprint_id so clicks land on the canonical strategy page
for that portfolio.