# Недавние и сохранённые расчёты пользователя

export default function Layout(props) {
  const { OpenAPIPage } = props.components ?? {};
  return (
    <>
      {props.children}
      ## Недавние и сохранённые расчёты пользователя

`GET /api/v1/calculators/calculations`

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

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

| Имя | Где | Обязательный | Тип | Описание |
| --- | --- | --- | --- | --- |
| `q` | query | нет | string | Поиск по названию сохранённых расчётов |

**Ответы**

- `200` — Расчёты пользователя (`application/json`, CalculationList)
  - `recent`: массив CalculationSummary, обязательное — Несохранённые расчёты за последнюю неделю, не больше пяти
    - `amount`: number, обязательное — Итог расчёта в рублях
    - `id`: string (uuid), обязательное — Идентификатор расчёта
    - `kind`: "state-fee" | "penalty" | "indexation" | "jurisdiction", обязательное — Вид расчёта: state-fee — госпошлина, penalty — неустойка, indexation — индексация, jurisdiction — подсудность
    - `name`: string, nullable, обязательное — Название; null — несохранённый расчёт из недавних
    - `saved_at`: string, nullable, обязательное — Когда расчёт сохранён, ISO 8601
    - `updated_at`: string, обязательное — Когда расчёт изменён, ISO 8601
  - `saved`: массив CalculationSummary, обязательное — Сохранённые расчёты
    - `amount`: number, обязательное — Итог расчёта в рублях
    - `id`: string (uuid), обязательное — Идентификатор расчёта
    - `kind`: "state-fee" | "penalty" | "indexation" | "jurisdiction", обязательное — Вид расчёта: state-fee — госпошлина, penalty — неустойка, indexation — индексация, jurisdiction — подсудность
    - `name`: string, nullable, обязательное — Название; null — несохранённый расчёт из недавних
    - `saved_at`: string, nullable, обязательное — Когда расчёт сохранён, ISO 8601
    - `updated_at`: string, обязательное — Когда расчёт изменён, ISO 8601
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Токен отсутствует, недействителен или истёк (`application/problem+json`, ProblemDetails)
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)

    </>
  );
}
