# Задать этапы проверки задачи

> Этапы проверки и утверждения по порядку: участники команды или агенты. Когда задача переходит «На проверке», её проверяют этапы по очереди; «Нужны правки» возвращает её исполнителю, последнее утверждение завершает задачу.

export default function Layout(props) {
  const { OpenAPIPage } = props.components ?? {};
  return (
    <>
      {props.children}
      ## Задать этапы проверки задачи

`PUT /api/v1/tasks/{id}/review/stages`

Этапы проверки и утверждения по порядку: участники команды или агенты. Когда задача переходит «На проверке», её проверяют этапы по очереди; «Нужны правки» возвращает её исполнителю, последнее утверждение завершает задачу.

**Авторизация:** dpop или oauth2: `tasks:write`

**Параметры**

| Имя | Где | Обязательный | Тип | Описание |
| --- | --- | --- | --- | --- |
| `id` | path | да | string (uuid) | Идентификатор задачи (UUID) |

**Тело запроса** (`application/json`, обязательное): TaskReviewStagesRequest
- `stages`: массив TaskReviewStageInput, обязательное — Этапы по порядку; пустой список убирает проверку

**Ответы**

- `204` — Этапы сохранены
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Токен отсутствует, недействителен или истёк (`application/problem+json`, ProblemDetails)
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)
- `404` — Ресурс не найден (`application/problem+json`, ProblemDetails)
- `503` — Ошибка (`application/problem+json`, ProblemDetails)

    </>
  );
}
