API Documentation
Access AlgoWorkout programmatically. Query strategies, pull kill reports, and manage pipeline runs via REST API.
Authentication
All API requests require a Bearer token. You can generate an API key from your Account Settings.
Authorization: Bearer YOUR_API_KEY
Rate Limits: Builder plans — 100 requests/hour. Institutional plans — unlimited.
Base URL
https://api.algoworkout.com/api/v1
Endpoints
List all your strategies with current pipeline status (hypothesis, surviving, killed, deployed).
Get full manifest for a specific strategy, including all stage results and audit trail.
Get the kill report for a killed strategy: reason, stage, metrics, and LLM critique.
Get equity curve data as JSON (date, portfolio_value, drawdown).
Get current pipeline status — counts per stage (hypothesis, sanity_check, interrogation, stress_test, walk_forward, deployed).
Trigger a new pipeline run with a custom hypothesis. Institutional only.
Update kill gate thresholds (min_sharpe, min_trades, max_drawdown, max_decay). Institutional only.
Example: List Strategies
Request:
curl -X GET https://api.algoworkout.com/api/v1/strategies \
-H "Authorization: Bearer ak_live_abc123xyz"
Response (200 OK):
{
"strategies": [
{
"id": "strat_001",
"name": "Momentum Treasury Spread",
"status": "deployed",
"ticker": "TLT",
"sharpe": 1.34,
"max_drawdown": -12.4,
"created_at": "2026-01-15T10:30:00Z"
},
{
"id": "strat_002",
"name": "Overnight Gap Reversal",
"status": "killed",
"kill_stage": "sanity_check",
"kill_reason": "Sharpe 0.21 < 0.5 threshold",
"created_at": "2026-01-16T14:20:00Z"
}
],
"total": 2,
"page": 1
}
Example: Get Kill Report
Request:
curl -X GET https://api.algoworkout.com/api/v1/strategies/strat_002/kill-report \
-H "Authorization: Bearer ak_live_abc123xyz"
Response (200 OK):
{
"strategy_id": "strat_002",
"name": "Overnight Gap Reversal",
"kill_stage": "sanity_check",
"kill_gate": 3,
"verdict": "KILL",
"reason": "Failed minimum thresholds",
"metrics_at_death": {
"sharpe_ratio": 0.21,
"total_trades": 12,
"max_drawdown": -8.3,
"annual_return": 3.2
},
"thresholds": {
"min_sharpe": 0.5,
"min_trades": 25
},
"failed_checks": ["sharpe_below_minimum", "insufficient_trades"],
"killed_at": "2026-01-16T14:22:34Z"
}
SDKs
Python SDK coming soon. For now, use the REST API directly with any HTTP client (curl, requests, httpx, etc.).
HTTP Status Codes
| Code | Meaning | Description |
|---|---|---|
| 200 | OK | Request succeeded. |
| 400 | Bad Request | Invalid parameters or malformed request body. |
| 401 | Unauthorized | Missing or invalid API key. |
| 403 | Forbidden | Your plan does not include access to this endpoint. |
| 429 | Rate Limited | Too many requests. Wait and retry. |
| 500 | Server Error | Something went wrong on our end. Contact support. |