
# 환경 설정 조회

`GET /v1/environment-settings` · 권한 `environment-settings:read`

환경의 언어, 시간대, 세션, 가입, 보안 알림, 계정 복구, MFA, Front-Channel Logout 및 허용된 1차 인증 요소 설정을 반환합니다(환경당 리소스 하나). 설정을 한 번도 저장하지 않았다면 기본값이 `ETag: "0"` 및 `updated_at: null`과 함께 반환됩니다. 응답 헤더 `ETag`에는 `PATCH` 요청에서 `If-Match`로 보내야 하는 버전이 담깁니다. 기간은 초 단위 정수입니다.

## 요청

이 작업은 경로, 쿼리 또는 본문 필드를 받지 않습니다. 환경은 자격 증명에서 결정됩니다.

## 응답

설정과 `ETag` 헤더가 포함된 `200 OK`입니다.

`allowed_first_factors`는 환경에서 허용된 1차 인증 요소를 나열하며, 항상 다음 순서로 반환됩니다: `password`, `passkey`, `email_otp`, `magic_link`, `sms_otp`, `social`, `enterprise`. 기본값은 `["password", "passkey", "social", "enterprise"]`이며, `email_otp`, `magic_link`, `sms_otp`는 직접 추가할 때만 켜집니다. 애플리케이션 또는 조직 정책은 이 집합을 더 좁히기만 할 수 있습니다.

```json
{
  "locales": {"enabled": ["en", "tr"], "default": "tr"},
  "default_zoneinfo": "Europe/Istanbul",
  "session": {"idle_timeout_s": 3600, "absolute_timeout_s": 2592000, "max_concurrent": 5, "concurrent_mode": "evict_oldest", "anomaly_action": "enforce"},
  "signup": {"mode": "invite_only", "email_domain_mode": "allowlist", "email_domains": ["example.com"]},
  "security_notifications": {"enabled": true, "events": ["password_changed", "password_reset"]},
  "account_recovery": {"mode": "self_service_waiting", "waiting_hours": 72, "support_url": ""},
  "mfa": {"email_second_factor_enabled": false, "email_second_factor_acr": "1fa", "totp_issuer_label": "Acme", "recovery_codes_enabled": true, "recovery_code_count": 10, "required": false, "min_acr": "1fa", "enrollment_grace_days": 0},
  "frontchannel_logout_enabled": false,
  "allowed_first_factors": ["password", "passkey", "social", "enterprise"],
  "updated_at": "2026-10-05T09:30:00.123456Z"
}
```

## 오류

| HTTP | code | 발생 시점 |
|---|---|---|
| 401 | `unauthenticated` | 자격 증명이 없거나, 유효하지 않거나, 취소되었습니다. |
| 403 | `insufficient_permissions` | 자격 증명에 필요한 권한이 없습니다. |
| 429 | `rate_limited` | 요청 빈도 한도를 초과했습니다. `Retry-After` 기간 이후에 다시 시도하십시오. |
| 503 | `service_unavailable` | 종속 서비스를 일시적으로 사용할 수 없습니다. `Retry-After` 기간 이후에 다시 시도하십시오. |

## 예제

```bash
curl https://api.eu.keenauth.com/v1/environment-settings \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
