Skip to documentation
Weavers Docs

Pages and endpoints

Tab to navigate · Enter to openEsc to close

PUT /api/eureka/strategy-workspaces/:strategyId/archive

Account required · HTTP API reference

All endpoints · Authentication and retries · Download OpenAPI

  • Requires a signed-in account and permission to access this resource. Use identifiers returned by your own account's earlier requests.
  • Protected writes require an allowed Origin, the CSRF cookie and matching X-CSRF-Token header.

Request

ParameterLocationType and requirement
strategyIdpathstring · required
Originheaderstring · required

An origin allowed by this deployment.

X-CSRF-Tokenheaderstring · required

Must match the CSRF cookie issued to this browser.

Body · application/json

archived required · boolean

Example

Examples use fictional data. Replace identifiers with resources you can access. For account requests, cookies.txt must contain your own session; set CSRF_TOKEN to the matching CSRF cookie value where required.

Save as request.json
{
  "archived": false
}
cURL (POSIX shell)
curl --include \
  --request PUT \
  'https://api.weavers.app/api/eureka/strategy-workspaces/11111111-1111-4111-8111-111111111111/archive' \
  --cookie cookies.txt --cookie-jar cookies.txt \
  --header 'Origin: https://weavers.app' \
  --header "X-CSRF-Token: ${CSRF_TOKEN}" \
  --header 'Content-Type: application/json' \
  --data-binary @request.json

Responses

200 · Successful response.

application/json

200 example · synthetic data
{
  "strategy": {
    "strategyId": "11111111-1111-4111-8111-111111111111",
    "name": "Example research",
    "revision": 1,
    "createdAt": "2025-01-01T00:00:00.000Z",
    "updatedAt": "2025-01-01T00:00:00.000Z",
    "draft": {
      "schema": "weavers.strategy-draft.v1",
      "tickerSymbols": [],
      "configuration": {
        "experimentKey": "tp_sl_two_stage",
        "templateKey": "tp_sl_two_stage_nsga2_v1",
        "cluster": "dev",
        "parameters": {
          "dataProvider": "alpaca",
          "publishBenchmarkSymbol": "SPY",
          "objectivePreset": "balanced",
          "workerCount": 1,
          "startDate": null,
          "endDate": null,
          "equitiesOnly": false,
          "excludeEtfs": false,
          "excludeIndiaEtfs": false,
          "stageATrials": 1,
          "stageA2Mode": "disabled",
          "stageA2Trials": 1,
          "stageAToA2Threshold": 1,
          "stageA2HorizonBars": 1,
          "stageA2LabelMinUpPct": 1,
          "stageA2PredictorFeaturesCsv": "example",
          "stageBTrials": 1,
          "stageBExecutionTimeframe": "1d",
          "stageBMaxHoldingBars": 1,
          "lookbackYears": 1,
          "trainMonths": 1,
          "valMonths": 1,
          "stepMonths": 1,
          "purgeDays": 1,
          "holdoutMonths": 1,
          "horizonBars": 1,
          "labelMinUpPct": 1,
          "stageAFeatureTimeframe": "1d",
          "predictorFeaturesCsv": "example",
          "stageADecisionThreshold": 1,
          "stageALearningRateMin": 1,
          "stageALearningRateMax": 1,
          "stageAL2Min": 1,
          "stageAL2Max": 1,
          "stageAEpochsMin": 1,
          "stageAEpochsMax": 1,
          "stageAPosWeightMin": 1,
          "stageAPosWeightMax": 1,
          "tpMin": 1,
          "tpMax": 1,
          "slMin": 1,
          "slMax": 1,
          "reserveCashPctMin": 1,
          "reserveCashPctMax": 1,
          "optimizeProbThreshold": false,
          "probThresholdMin": 1,
          "probThresholdMax": 1,
          "executionMode": "notional",
          "executionBrokerId": "1",
          "leverageMode": "cash",
          "requestedLeverage": 1,
          "marginInterestAnnualRatePct": null,
          "marginInterestDayCountBasis": null,
          "marginInterestRateSource": null,
          "marginInterestBenchmarkId": null,
          "marginInterestBenchmarkRatePct": null,
          "marginInterestBenchmarkRateSeries": null,
          "marginInterestSpreadPct": null,
          "initialMarginRequirementPct": null,
          "maintenanceMarginRequirementPct": null,
          "marketFeeProfile": null,
          "initialCapital": 1,
          "riskPerTradePct": 1,
          "maxPositionPctEquity": 1,
          "maxGrossExposurePctEquity": 1,
          "allowFractionalShares": false,
          "maxTradesPerDay": null,
          "commissionBps": 1,
          "slippageBps": 1,
          "halfSpreadBps": 1,
          "borrowBpsPerBar": 1,
          "minTrades": 1,
          "maxDrawdown": 1,
          "drawdownGateMetric": "max_drawdown_p75",
          "maxSymbolConcentration": 1,
          "minRiskAdjusted": 1,
          "maxTurnover": null,
          "maxCvar95": null,
          "lambdaReturn": 1,
          "lambdaStability": 1,
          "lambdaTail": 1,
          "lambdaDrawdown": 1,
          "lambdaConcentration": 1,
          "lambdaTurnover": 1,
          "negativeRiskAdjustedPenalty": 1,
          "saveValidationTrades": false,
          "stageASeedBase": 1,
          "stageBSeedBase": 1
        },
        "executionPlan": {
          "mode": "stage_a_only",
          "stageASourceRunId": null,
          "canvas": null
        }
      }
    }
  }
}
View response model
strategy required · object
View strategy model
strategyId required · string
name required · string
revision required · number
createdAt required · string
updatedAt required · string
archivedAt optional · null | string
View archivedAt model
Variant 1: null

null

Variant 2: string

string

tickerCount optional · number
research optional · null | object
View research model
Variant 1: null

null

Variant 2: object
hypothesis required · string
source optional · object
View source model
kind required · "channel_observation" | "published_strategy"
id required · string
label required · string
observedAt required · string

Additional fields: JSON values.

Additional fields: JSON values.

draft required · object
View draft model
schema required · "weavers.strategy-draft.v1"
tickerSymbols required · array of string
View tickerSymbols model

Array items:

string

configuration required · object
View configuration model
compute optional · object
View compute model
tier required · "included" | "accelerated"
vcpus required · number
memoryGiB required · number
maxHours required · number
maxTwigs required · number

Additional fields: JSON values.

experimentName optional · string
experimentKey required · "tp_sl_two_stage"
templateKey required · "tp_sl_two_stage_nsga2_v1"
cluster required · "dev"
parameters required · object
View parameters model
dataProvider required · "alpaca"
publishBenchmarkSymbol required · "SPY"
objectivePreset required · "balanced" | "return_focus" | "risk_focus"
workerCount required · number
startDate required · null | string
View startDate model
Variant 1: null

null

Variant 2: string

string

endDate required · null | string
View endDate model
Variant 1: null

null

Variant 2: string

string

equitiesOnly required · boolean
excludeEtfs required · boolean
excludeIndiaEtfs required · boolean
stageATrials required · number
stageA2Mode required · "disabled" | "auto"
stageA2Trials required · number
stageAToA2Threshold required · number
stageA2HorizonBars required · number
stageA2LabelMinUpPct required · number
stageA2PredictorFeaturesCsv required · string
stageBTrials required · number
stageBExecutionTimeframe required · "1d" | "4h" | "1h"
stageBMaxHoldingBars required · number
lookbackYears required · number
trainMonths required · number
valMonths required · number
stepMonths required · number
purgeDays required · number
holdoutMonths required · number
holdoutStartDate optional · null | string
View holdoutStartDate model
Variant 1: null

null

Variant 2: string

string

horizonBars required · number
labelMinUpPct required · number
stageAFeatureTimeframe required · "1d"
predictorFeaturesCsv required · string
stageADecisionThreshold required · number
entryFilters optional · null | object
View entryFilters model
Variant 1: null

null

Variant 2: object
schema_version required · 1
bar required · "1d"
condition required · object
View condition model
Variant 1: object
op required · "cross_above" | "cross_below" | "gt" | "gte" | "lt" | "lte"
left required · number | object
View left model
Variant 1: number

number

Variant 2: object
field required · "close" | "volume"

Additional fields: JSON values.

Variant 3: object
indicator required · "sma" | "ema" | "rsi" | "atr"
period required · number

Additional fields: JSON values.

Variant 4: object
indicator required · "macd"
fast required · number
slow required · number
signal required · number
component required · "line" | "signal" | "histogram"

Additional fields: JSON values.

right required · number | object
View right model
Variant 1: number

number

Variant 2: object
field required · "close" | "volume"

Additional fields: JSON values.

Variant 3: object
indicator required · "sma" | "ema" | "rsi" | "atr"
period required · number

Additional fields: JSON values.

Variant 4: object
indicator required · "macd"
fast required · number
slow required · number
signal required · number
component required · "line" | "signal" | "histogram"

Additional fields: JSON values.

Additional fields: JSON values.

Variant 2: object
op required · "and" | "or"
conditions required · array of object
View conditions model

Array items:

op required · "cross_above" | "cross_below" | "gt" | "gte" | "lt" | "lte"
left required · number | object
View left model
Variant 1: number

number

Variant 2: object
field required · "close" | "volume"

Additional fields: JSON values.

Variant 3: object
indicator required · "sma" | "ema" | "rsi" | "atr"
period required · number

Additional fields: JSON values.

Variant 4: object
indicator required · "macd"
fast required · number
slow required · number
signal required · number
component required · "line" | "signal" | "histogram"

Additional fields: JSON values.

right required · number | object
View right model
Variant 1: number

number

Variant 2: object
field required · "close" | "volume"

Additional fields: JSON values.

Variant 3: object
indicator required · "sma" | "ema" | "rsi" | "atr"
period required · number

Additional fields: JSON values.

Variant 4: object
indicator required · "macd"
fast required · number
slow required · number
signal required · number
component required · "line" | "signal" | "histogram"

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

stageALearningRateMin required · number
stageALearningRateMax required · number
stageAL2Min required · number
stageAL2Max required · number
stageAEpochsMin required · number
stageAEpochsMax required · number
stageAPosWeightMin required · number
stageAPosWeightMax required · number
tpMin required · number
tpMax required · number
slMin required · number
slMax required · number
reserveCashPctMin required · number
reserveCashPctMax required · number
optimizeProbThreshold required · boolean
probThresholdMin required · number
probThresholdMax required · number
executionMode required · "notional" | "capital"
executionBrokerId required · string
leverageMode required · "cash" | "reg_t"
requestedLeverage required · 1 | 2
marginInterestAnnualRatePct required · null | number
View marginInterestAnnualRatePct model
Variant 1: null

null

Variant 2: number

number

marginInterestDayCountBasis required · null | number
View marginInterestDayCountBasis model
Variant 1: null

null

Variant 2: number

number

marginInterestRateSource required · null | string
View marginInterestRateSource model
Variant 1: null

null

Variant 2: string

string

marginInterestBenchmarkId required · null | string
View marginInterestBenchmarkId model
Variant 1: null

null

Variant 2: string

string

marginInterestBenchmarkRatePct required · null | number
View marginInterestBenchmarkRatePct model
Variant 1: null

null

Variant 2: number

number

marginInterestBenchmarkRateSeries required · null | array of object
View marginInterestBenchmarkRateSeries model
Variant 1: null

null

Variant 2: array of object

Array items:

date required · string
rate_pct required · number

Additional fields: JSON values.

marginInterestSpreadPct required · null | number
View marginInterestSpreadPct model
Variant 1: null

null

Variant 2: number

number

initialMarginRequirementPct required · null | number
View initialMarginRequirementPct model
Variant 1: null

null

Variant 2: number

number

maintenanceMarginRequirementPct required · null | number
View maintenanceMarginRequirementPct model
Variant 1: null

null

Variant 2: number

number

marketFeeProfile required · null | object
View marketFeeProfile model
Variant 1: null

null

Variant 2: object

Additional fields: JSON value.

initialCapital required · number
riskPerTradePct required · number
maxPositionPctEquity required · number
maxGrossExposurePctEquity required · number
allowFractionalShares required · boolean
maxTradesPerDay required · null | number
View maxTradesPerDay model
Variant 1: null

null

Variant 2: number

number

commissionBps required · number
slippageBps required · number
halfSpreadBps required · number
borrowBpsPerBar required · number
minTrades required · number
maxDrawdown required · number
drawdownGateMetric required · "max_drawdown_p75" | "max_drawdown_stitched"
maxSymbolConcentration required · number
minRiskAdjusted required · number
maxTurnover required · null | number
View maxTurnover model
Variant 1: null

null

Variant 2: number

number

maxCvar95 required · null | number
View maxCvar95 model
Variant 1: null

null

Variant 2: number

number

lambdaReturn required · number
lambdaStability required · number
lambdaTail required · number
lambdaDrawdown required · number
lambdaConcentration required · number
lambdaTurnover required · number
negativeRiskAdjustedPenalty required · number
saveValidationTrades required · boolean
stageASeedBase required · number
stageBSeedBase required · number

Additional fields: JSON values.

executionPlan required · object
View executionPlan model
mode required · "stage_a_only" | "stage_b_only" | "stage_a_to_b"
stageASourceRunId required · null | string
View stageASourceRunId model
Variant 1: null

null

Variant 2: string

string

stageAStudyName optional · null | string
View stageAStudyName model
Variant 1: null

null

Variant 2: string

string

stageAComponent optional · null | object
View stageAComponent model
Variant 1: null

null

Variant 2: object
sourceKind required · "weavers_preset"
componentType required · "stage_a" | "stage_b"
componentKey required · string

Additional fields: JSON values.

Variant 3: object
sourceKind required · "notebook_component"
componentType required · "stage_a" | "stage_b"
componentKey required · string

Additional fields: JSON values.

stageBComponent optional · null | object
View stageBComponent model
Variant 1: null

null

Variant 2: object
sourceKind required · "weavers_preset"
componentType required · "stage_a" | "stage_b"
componentKey required · string

Additional fields: JSON values.

Variant 3: object
sourceKind required · "notebook_component"
componentType required · "stage_a" | "stage_b"
componentKey required · string

Additional fields: JSON values.

canvas required · null | object
View canvas model
Variant 1: null

null

Variant 2: object
version required · 1
nodes required · array of object
View nodes model

Array items:

id required · string
kind required · "stage_a_trainer" | "stage_b_entry_gate" | "stage_b_feasibility_gate" | "stage_b_optimizer"
x required · number
y required · number

Additional fields: JSON values.

edges required · array of object
View edges model

Array items:

id required · string
source required · string
target required · string

Additional fields: JSON values.

Additional fields: JSON values.

stageAUniverseSource optional · null | object
View stageAUniverseSource model
Variant 1: null

null

Variant 2: object
type required · "base"

Additional fields: JSON values.

Variant 3: object
type required · "platform_niche"
nicheId required · number
nicheKey required · string

Additional fields: JSON values.

Variant 4: object
type required · "ticker_pool"
symbols required · array of string
View symbols model

Array items:

string

Additional fields: JSON values.

stageADataSelectors optional · null | object
View stageADataSelectors model
Variant 1: null

null

Variant 2: object
matchMode required · "all" | "any"
selectors required · array of object
View selectors model

Array items:

Variant 1: object
type required · "channel"
timeframe required · "1d" | "4h" | "1h"
windowDays required · number
directions required · array of "ascending" | "descending"
View directions model

Array items:

"ascending" | "descending"

requireValid required · boolean
algoVersion optional · string
characteristics optional · object
View characteristics model
states optional · array of "new" | "continuing"
View states model

Array items:

"new" | "continuing"

minR2 optional · number
maxR2 optional · number
minBandPosition optional · number
maxBandPosition optional · number
minBandWidthRatio optional · number
maxBandWidthRatio optional · number
minNormalizedSlope optional · number
maxNormalizedSlope optional · number
minConsecutiveRuns optional · number
maxConsecutiveRuns optional · number

Additional fields: JSON values.

missingDataPolicy required · "skip_and_log"

Additional fields: JSON values.

Variant 2: object
type required · "regime"
source required · "snapshot"
regime required · "bull" | "bear" | "stable"
minConfidence required · number
missingDataPolicy required · "skip_and_log"

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

seedConfig optional · null | object
View seedConfig model
Variant 1: null

null

Variant 2: object
sourceStrategyId required · string
sourceStrategyRegistryId required · number
sourceArtifactId required · number
sourceRunId required · null | string
View sourceRunId model
Variant 1: null

null

Variant 2: string

string

stageAConfig required · object
View stageAConfig model

Additional fields: JSON value.

finalExecutionConfig required · object
View finalExecutionConfig model

Additional fields: JSON value.

Additional fields: JSON values.

Additional fields: JSON values.

research optional · object
View research model
hypothesis required · string
source optional · object
View source model
kind required · "channel_observation" | "published_strategy"
id required · string
label required · string
observedAt required · string

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

400 · Invalid request.

application/json

400 example · synthetic data
{
  "error": "example",
  "code": "example"
}
View response model
error required · string
code required · string

Additional fields: JSON values.

401 · Authentication is missing or invalid.

application/json

401 example · synthetic data
{}
View response model

Error envelopes can include resource-specific details. Check the status before reading these fields.

error optional · string
code optional · string
message optional · string

Additional fields: JSON values.

403 · Permission, origin or CSRF check failed.

application/json

403 example · synthetic data
{}
View response model

Error envelopes can include resource-specific details. Check the status before reading these fields.

error optional · string
code optional · string
message optional · string

Additional fields: JSON values.

429 · Rate limit reached; honor Retry-After when supplied.

application/json

429 example · synthetic data
{}
View response model

Error envelopes can include resource-specific details. Check the status before reading these fields.

error optional · string
code optional · string
message optional · string

Additional fields: JSON values.

500 · Server failure.

application/json

500 example · synthetic data
{
  "error": "example",
  "code": "example"
}
View response model
error required · string
code required · string

Additional fields: JSON values.

default · Operation-specific error. Inspect error/code before deciding whether to retry.

application/json

default example · synthetic data
{
  "error": "example",
  "code": "example"
}
View response model
error required · string
code required · string

Additional fields: JSON values.