---
title: "Mean-maximal power, recent and all-time"
method: GET
path: "/training/power-curve"
tags: ["Training"]
---

# Mean-maximal power, recent and all-time

`GET /training/power-curve`

## Request

- Base URL: `https://bodylab.lol/api/v1`
- URL: `https://bodylab.lol/api/v1/training/power-curve`
- Auth: HTTP bearer

## Query parameters

- `days` integer: How many days back from today.

## Headers

- `X-Client-Platform` string
- `X-Client-Version` string

## Response `200`

OK

- object
  - `recent` object[], required
    - `durationS` integer, required
    - `watts` number, required: The most held for at least durationS: never higher than a shorter duration's.
    - `heldForS` integer, required: How long the effort behind this figure lasted. Longer than durationS when a longer effort beat every one of exactly this length.
    - `achievedOn` string, date, required: A day on the athlete's own calendar: YYYY-MM-DD, no time zone.
    - `daysAgo` integer, required
  - `allTime` object[], required
    - `durationS` integer, required
    - `watts` number, required: The most held for at least durationS: never higher than a shorter duration's.
    - `heldForS` integer, required: How long the effort behind this figure lasted. Longer than durationS when a longer effort beat every one of exactly this length.
    - `achievedOn` string, date, required: A day on the athlete's own calendar: YYYY-MM-DD, no time zone.
    - `daysAgo` integer, required
  - `weightKg` number, nullable, required
  - `ftpW` number, nullable, required
  - `impliedFtpW` number, nullable, required: 0.95 × the recent 20-minute best.

## Other responses

- `401`: Error: UNAUTHORIZED.

---

[API](https://skmtc.dev/bodylab/apis/body-lab-api.md) · [All operations](https://skmtc.dev/bodylab/apis/body-lab-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bodylab/apis/body-lab-api/revisions/544c201eaf88?raw)
