Pauses automation on an active portfolio.
paused. Idempotent — calling
stop on an already-paused portfolio returns the current detail without
any side effects, matching Stripe-style pause semantics.
Rebalance history, on-chain balances, and vault positions are preserved
while paused; call /start to resume automation. The scheduler will
ignore a paused portfolio until its status is flipped back to active.
x-api-key header (required)portfolios:writestart and stop calls on the same portfolio are last-writer-wins
on the schedule row. Both requests return 200 with the state each observed,
so a client that issued the losing transition may briefly see stale status —
re-fetch the portfolio detail if you need the post-race state.
Cross-tenant access returns 404, not 403, so a portfolio id that belongs
to a different tenant is indistinguishable from one that does not exist.
POST /v2/enroll or GET /v2/portfolios.400 when the portfolio has no rebalance schedule to transition401 when x-api-key header is missing or the key is invalid403 when the API key lacks the portfolios:write scope404 when the portfolio does not exist or does not belong to the tenant500 on unexpected server errors