# Сохранить личный порядок и видимость режимов архива

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

`PUT /api/v1/files/shelf/preferences`

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

**Тело запроса** (`application/json`, обязательное): ShelfPreferencesRequest
- `scopes`: массив object, обязательное — Порядок и видимость режимов архива
  - `key`: string, обязательное — Режим списка: all, signed, active, … или идентификатор своей папки
  - `layout`: "none" | "year" | "quarter" | "month" | "party" | "kind" | "document" — Раскладка папки: подпапки по годам, кварталам, месяцам и т. д.
  - `pinned`: boolean, обязательное — Держать на полке
  - `visible`: boolean, обязательное — Показывать в меню

**Ответы**

- `200` — Настройки сохранены (`application/json`, ShelfPreferences)
  - `scopes`: массив object, обязательное — Порядок и видимость режимов архива
    - `key`: string, обязательное — Режим списка: all, signed, active, … или идентификатор своей папки
    - `layout`: "none" | "year" | "quarter" | "month" | "party" | "kind" | "document" — Раскладка папки: подпапки по годам, кварталам, месяцам и т. д.
    - `pinned`: boolean, обязательное — Держать на полке
    - `visible`: boolean, обязательное — Показывать в меню
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Токен отсутствует, недействителен или истёк (`application/problem+json`, ProblemDetails)
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)

    </>
  );
}
