Portfolio
One book's full detail: registry row, today's holdings + overlay legs, a recent-events window, the NAV series and windowed returns.
events is the public projection of the diff log, not the log: the most recent _PUBLIC_EVENT_LIMIT rows, trimmed to _PUBLIC_EVENT_KEYS with each reason rewritten into the fixed public vocabulary. See the block comment above — the stored reasons name the selection mechanism and quote its cut-points, which is the same disclosure _public_construction exists to prevent.
Gating: the caller's tier must meet the book's tier (403 otherwise, so a free caller sees only the free book). The snapshot actually served is then clamped by whichever is more restrictive of the caller's access_level (draft/prime/published — see model_portfolio_snapshot_status, standard tier and up treated as prime — see _effective_as_of) and its publish_delay_min free-tier lever; asof is the snapshot actually served under that clamp. delayed_to echoes that clamp date only for a caller the free-tier lever actually applies to (_is_delayed) — a paying subscriber gets None even though the draft gate did clamp them, because waiting for a snapshot to be confirmed is the schedule, not a delay.
Request
- Base URL: https://api.rayana.ai (the document declares no server; this is the origin it was published from)
- URL: https://api.rayana.ai/v1/portfolios/{slug}
- Auth: none declared
Path parameters
Headers
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.