---
title: "Upload Signal History"
method: POST
path: "/v1/strategies/{strategy_id}/signal-history"
---

# Upload Signal History

`POST /v1/strategies/{strategy_id}/signal-history`

## Request

- Base URL: `https://api.quantradin.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.quantradin.com/v1/strategies/{strategy_id}/signal-history`
- Auth: none declared

Catalog #10 — upload the timestamped SIGNAL HISTORY that makes a
webhook-driven strategy gradable.

Body: {"signals": [{"symbol": "NVDA", "ts": "2026-03-03T14:30:00Z"},
...]} (<= 5000 rows). Stored ON the strategy (its spec carries
`signal_history`), so any backtest of the strategy — POST /v1/backtests
with strategy_id, or the per-alpha run — grades entries off it with the
normal no-look-ahead discipline (signal ts → next-bar fill). Replaces
any previous upload. Only meaningful on a webhook spec (entry.webhook:
true) — refused in plain words otherwise. Owner-scoped (404 on someone
else's id, indistinguishable from a missing one); audited.

## Path parameters

- `strategy_id` integer, required

## Headers

- `x-vega-key` string, nullable

## Request body

- object

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/quantradin/apis/vega-api.md) · [All operations](https://skmtc.dev/quantradin/apis/vega-api/llms.txt) · [OpenAPI document](https://skmtc.dev/quantradin/apis/vega-api/revisions/47add154ef38?raw)
