---
title: "Get Backtest Periods"
method: GET
path: "/v1/backtests/{job_id}/periods"
tags: ["backtests"]
---

# Get Backtest Periods

`GET /v1/backtests/{job_id}/periods`

## Request

- Base URL: `https://api.usekeel.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.usekeel.io/v1/backtests/{job_id}/periods`
- Auth: none declared

The slice per calendar period of a completed run, as one table (Q-2565).

``utils.backtest_slice.build_periods`` — the slice owner over a partition
of the run's bars by UTC month or quarter (every bar in the period
holding the day it covers, Q-2577), from one ``results.json`` read: each
row's return, max drawdown (within the period), bars and positions, plus
the whole run's row; the rows' bars sum to the run's and their returns
compound to the run's. A run with more than ``MAX_PERIODS`` periods at the grain is a
422 naming the count. Same access rule and 409 as ``/slice``; no
backtest unit is spent.

## Path parameters

- `job_id` string, required

## Query parameters

- `periods` string, required: The period grain: monthly or quarterly (UTC calendar periods).

## Headers

- `Authorization` string, nullable
- `X-Org-Id` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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