Skip to main content
POST
Publishes a new allocation version. The new version becomes the strategy’s active version. Previous versions stay readable via GET /v2/strategies/{strategyId}/versions.
  • Auth: x-api-key header (required)
  • Required scope: strategies:write
Affects every enrolled portfolio. The new allocation is what every portfolio enrolled in this strategy will rebalance to on its next scheduled run. Pause portfolios via POST /v2/portfolios/{portfolioId}/stop first if you need a staged rollout. Don’t grant strategies:write to keys exposed to end-user surfaces.

Request body

  • allocation — required. Same validation as POST /v2/strategies: weights sum to 100, CAIP-19 asset IDs, ≤50 assets.
  • changeLog — optional, ≤500 chars. Free-form note shown in the version history.
Body is strict; unknown keys (including a client-supplied version) return 400. Version numbers are server-assigned.

Concurrent publishes

If two publishes for the same strategy arrive at the same time, each gets a distinct sequential version number and the last one becomes the active version. Serialize on your side if you need strict ordering.

Cross-tenant access

Returns 404 — strategies you don’t own are not exposed.