---
title: "Получить командные метрики спринта"
method: GET
path: "/api/v1/tasks/scrum/metrics/{cycle}"
tags: ["Tasks"]
---

# Получить командные метрики спринта

`GET /api/v1/tasks/scrum/metrics/{cycle}`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/tasks/scrum/metrics/{cycle}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)
  - HTTP bearer

Метрики не сравнивают людей; источник — история переходов задач.

## Response `200`

Throughput, lead/review time, rework, aging WIP и размер задач

- SprintMetrics
  - `cycle` string, uuid, required
  - `window_from` string, required
  - `window_to` string, required
  - `throughput` integer, required
  - `throughput_history` SprintThroughputPoint[], required
    - `cycle` string, uuid, required
    - `name` string, required
    - `completed` integer, required
    - `starts_at` string, nullable, required
    - `ends_at` string, nullable, required
  - `lead_time` DurationMetric, required
    - `samples` integer, required
    - `median_seconds` integer, required
    - `percentile_85_seconds` integer, required
  - `review_time` DurationMetric, required
    - `samples` integer, required
    - `median_seconds` integer, required
    - `percentile_85_seconds` integer, required
  - `reviewed_tasks` integer, required
  - `returned_to_work` integer, required
  - `rework_percent` number, required
  - `aging_wip` SprintAgingTask[], required
    - `id` string, uuid, required
    - `code` string, required
    - `title` string, required
    - `seconds` integer, required
  - `sizing` SprintSizing, required
    - `up_to_half_tact` integer, required
    - `up_to_tact` integer, required
    - `over_tact` integer, required
    - `unestimated` integer, required
  - `outcomes` SprintOutcomeMetrics, required
    - `available` boolean, required
  - `points` SprintMetricsPoints
    - `planned_points` integer, nullable, required
    - `completed_points` integer, nullable, required
    - `plan_fixed` boolean, required: План зафиксирован снимком при старте
    - `velocity` Velocity, required: Сколько баллов команда обычно закрывает за спринт — по последним пяти завершённым спринтам. Прогноз — с трёх спринтов истории. Не мерило людей.
      - `sprints` integer, required
      - `average` number, required
      - `min` integer, required
      - `max` integer, required
      - `forecast_low` integer, nullable, required
      - `forecast_high` integer, nullable, required
    - `burndown` Burndown, required
      - `sprint` string, uuid, required
      - `planned_points` integer, required
      - `plan_fixed` boolean, required: false — снимка плана нет: идеальная линия от текущего объёма, журнал в текущих оценках
      - `points` BurndownPoint[], required
        - `date` string, date, required
        - `ideal` number, required
        - `remaining` number, nullable, required: Остаток баллов незавершённых задач; null у будущих дней
        - `scope` number, nullable, required
        - `scope_change` number, required: Баллы, добавленные или убранные за день после старта

## Other responses

- `400`: Некорректный запрос или нарушение бизнес-правила
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `404`: Запись не найдена или не видима текущему пользователю
- `500`: Внутренняя ошибка без раскрытия server-only деталей

---

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