---
title: "Queue a backtest run. Holds credits; refunded in full unless a report is produced."
method: POST
path: "/v1/backtest/submit"
tags: ["backtest"]
---

# Queue a backtest run. Holds credits; refunded in full unless a report is produced.

`POST /v1/backtest/submit`

## Request

- Base URL: `https://outcometick.com`
- URL: `https://outcometick.com/v1/backtest/submit`
- Auth: HTTP bearer

Spends money or credits. An agent must show the quote to the user and get explicit approval before calling this.

## Request body

- object: Give from/to, or days (the most recent n backtestable days), or range.
  - `venue` 'polymarket' | 'predict'
  - `assets` string[]: Base symbols, e.g. ["BTC"]
  - `from` string, date: UTC day, YYYY-MM-DD
  - `to` string, date: UTC day, YYYY-MM-DD
  - `days` integer
  - `range` '7 days' | '30 days'
  - `sweep_cells` integer
  - `files` SourceFile[]: manifest.json plus source files
    - `name` string, required
    - `content` string, required
  - `uploads` object: Series file name to the `key` from POST /v1/backtest/upload
  - `email` string, email
  - `locale` 'en' | 'zh': Decides the currency (zh pays in CNY) and the return page

## Response `202`

Queued

- object
  - `ok` unknown
  - `run_id` string
  - `status` 'queued'
  - `credits_held` integer
  - `quote` Quote
    - `venue` string
    - `assets` string[]
    - `from` string, date: UTC day, YYYY-MM-DD
    - `to` string, date: UTC day, YYYY-MM-DD
    - `requestedFrom` string, date: UTC day, YYYY-MM-DD
    - `requestedTo` string, date: UTC day, YYYY-MM-DD
    - `requestedDays` integer
    - `archivedDayCount` integer
    - `missingDays` integer
    - `marketDays` integer
    - `mode` string
    - `sweepCells` integer
    - `credits` integer: What the run will hold; refunded in full unless a report is produced
    - `approxUsd` number
    - `approx` object
  - `source_sha256` string

## Other responses

- `401`: Missing, unknown, revoked or expired key
- `402`: Insufficient credits
- `422`: Rejected; costs nothing
- `429`: Rate limited; retry after the Retry-After header
- `503`: Temporarily unavailable; retry

---

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