
# 사용자의 연결된 ID 목록 조회

`GET /v1/users/{user_id}/identities` · 권한 `users:read`

사용자의 연결된 ID(비밀번호, 소셜, SAML, OIDC, 레거시)를 생성 시간순으로 한 페이지에 나열합니다. 사용자당 ID 수는 제한되어 있으므로, 목록에는 `limit`, `after`, `before`, `order`가 없으며 `list_metadata`는 항상 `null` 값입니다. ID의 외부 주체(OIDC `sub`, SAML NameID), ID 공급자가 보고한 이메일 주소, 자격 증명 참조는 반환되지 않습니다. 패스키와 일회용 코드 방식은 인증 수단이므로 `GET /v1/users/{user_id}/authenticators`로 조회합니다.

## 요청

| 매개변수 | 위치 | 필수 | 설명 |
|---|---|---|---|
| `user_id` | path | 예 | `usr_` 접두사가 붙은 사용자 ID입니다. |

## 응답

`200 OK`. `data`에는 생성 시간순으로 정렬된 ID가 들어 있습니다. 목록은 페이징되지 않으므로 `list_metadata`는 항상 `null` 값입니다. `connection_id`는 `password`인 경우 `null`이며, `provider`는 `social`인 경우에만 설정됩니다.

ID에는 `idn_` 접두사가 붙습니다.

```json
{
  "data": [
    {
      "id": "idn_0a1b2c3d4e5f6g7h8j9k0m1n2q",
      "type": "password",
      "connection_id": null,
      "provider": null,
      "linked_via": "primary",
      "created_at": "2026-01-15T09:30:00Z"
    },
    {
      "id": "idn_0a1b2c3d4e5f6g7h8j9k0m1n2r",
      "type": "social",
      "connection_id": "conn_0a1b2c3d4e5f6g7h8j9k0m1n2s",
      "provider": "google",
      "linked_via": "manual_link",
      "created_at": "2026-02-01T08:00:00Z"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": null
  }
}
```

`type`: `password`, `social`, `saml`, `oidc`, `legacy` · `linked_via`: `primary`, `auto_verified_email`, `user_confirmed`, `admin_api`, `import`, `jit`, `auto_domain`, `invite_proof`, `manual_link`, `scim_match`

## 오류

모든 오류는 안정적인 `code`가 포함된 `application/problem+json` 본문으로 반환됩니다.

| HTTP | `code` | 발생 조건 |
|---|---|---|
| 404 | `not_found` | 이 환경에 사용자가 없거나 ID 형식이 잘못되었습니다. |
| 401 | `unauthenticated` | API 키가 없거나 유효하지 않거나 취소되었습니다. |
| 403 | `insufficient_permissions` | 키에 `users:read` 권한이 없습니다. |
| 429 | `rate_limited` | 요청 한도를 초과했습니다. `Retry-After`를 따르십시오. |
| 503 | `service_unavailable` | 종속 서비스를 일시적으로 사용할 수 없습니다. 나중에 다시 시도하십시오. |

## 예제

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

## 개인정보

이 엔드포인트는 개인정보인 연결된 ID를 포함합니다. [KeenAuth API의 개인정보](/docs/policies/personal-data)에서 저장되는 내용, 보관 기간, 삭제 방법을 확인하십시오. 어떤 필드에도 민감정보(건강, 생체 정보, 종교, 정치적 견해, 성적 지향)를 보내지 마십시오.
