# Обновить SSO-провайдер

export default function Layout(props) {
  const { OpenAPIPage } = props.components ?? {};
  return (
    <>
      {props.children}
      ## Обновить SSO-провайдер

`PUT /api/v1/security/admin/sso/providers/{id}`

**Авторизация:** dpop

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

| Имя | Где | Обязательный | Тип | Описание |
| --- | --- | --- | --- | --- |
| `id` | path | да | string (uuid) |  |
| `idempotency-key` | header | нет | string | Ключ идемпотентности для безопасного повтора запроса: 8–255 символов из набора A-Za-z0-9_.:+/=-, ответ кэшируется на 24 ч |

**Тело запроса** (`application/json`, обязательное): UpdateSsoProvider
- `attributeMap`: object — Новый маппинг claim IdP → атрибут
- `clientId`: string — Новый client_id
- `clientSecret`: string — Новый client_secret; хранится в зашифрованном виде
- `isActive`: boolean — Активность провайдера
- `issuerUrl`: string (uri) — Новый issuer URL
- `scopes`: массив string — Полный новый список OIDC scope

**Ответы**

- `200` — Операция выполнена (`application/json`, SsoAdminOk)
  - `ok`: boolean, обязательное — Операция выполнена
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Токен отсутствует, недействителен или истёк (`application/problem+json`, ProblemDetails)
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)
- `429` — Превышен лимит запросов, повторите через Retry-After секунд (`application/problem+json`, ProblemDetails)

    </>
  );
}
