사용자의 인증기 목록 조회

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

사용자의 인증기(패스키, TOTP, SMS, 이메일, 푸시 요소)를 생성 시간순으로 한 페이지에 나열합니다. 지난 90일 동안 취소된 인증기도 포함됩니다. 사용자당 인증기 수는 제한되어 있으므로 목록에는 limit, after, before, order가 없으며, list_metadata는 항상 null 값입니다. 메타데이터만 반환되며, 공개 키, 자격 증명 ID, TOTP 비밀 값, 복구 코드는 절대 반환되지 않습니다.

조직 범위

조직 관리자를 위한 멤버 진단 보기를 만들려면 org_id를 전달하십시오. 이때 키에는 organizations:read 권한도 필요합니다. 이 권한이 없으면 아무것도 읽기 전에 403 insufficient_permissions로 요청이 실패합니다. 사용자가 해당 조직의 멤버가 아니면(invited, active, suspended 멤버십이 없음) 알 수 없는 사용자와 동일한 응답인 404 not_found로 요청이 실패합니다. 사용자가 멤버이면 각 인증기의 종류와 MFA 등록 여부만 표시됩니다. 활성 인증기만 나열되며, label, last_used_at, revoked_at, revoked_by, revoke_reason은 null이고 synced는 false입니다. 조직 외부에 있는 사용자 기기의 세부 정보는 조직에 속하지 않기 때문입니다. role이 second_factor 또는 both인 활성 인증기가 있으면 MFA가 등록된 것입니다. org_id가 없으면 응답은 변경되지 않습니다.

요청

매개변수 위치 필수 설명
user_id 경로 예 사용자 ID이며, 접두사는 usr_입니다.
org_id 쿼리 아니요 조직 ID이며, 접두사는 org_입니다. 보기를 해당 조직으로 제한합니다. 조직 범위를 참조하십시오. organizations:read가 필요합니다.

응답

200 OK. data에는 생성 시간순으로 정렬된 인증기가 담깁니다. 목록이 페이지로 나뉘지 않으므로 list_metadata는 항상 null 값입니다. 빈 필드는 null입니다.

키에 users:read_pii 권한이 없으면 label은 이니셜(A. L.)로 축약됩니다.

{
  "data": [
    {
      "id": "cred_0a1b2c3d4e5f6g7h8j9k0m1n2p",
      "type": "webauthn",
      "role": "both",
      "label": "Laptop",
      "status": "active",
      "synced": true,
      "created_at": "2026-01-15T09:30:00Z",
      "last_used_at": "2026-02-01T08:00:00Z",
      "revoked_at": null,
      "revoked_by": null,
      "revoke_reason": null
    }
  ],
  "list_metadata": {
    "before": null,
    "after": null
  }
}

type: webauthn, totp, sms, email, push · role: first_factor, second_factor, both · status: pending, active, revoked, clone_suspected

오류

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

HTTP code 발생 조건
404 not_found 이 환경에 사용자가 없거나(또는 ID 형식이 잘못됨), org_id를 전달했는데 사용자가 해당 조직의 멤버가 아닙니다.
401 unauthenticated API 키가 없거나 잘못되었거나 취소되었습니다.
403 insufficient_permissions 키에 users:read 권한이 없거나, org_id를 전달했는데 키에 organizations:read가 없습니다.
429 rate_limited 요청 한도를 초과했습니다. Retry-After를 준수하십시오.
503 service_unavailable 종속 서비스를 일시적으로 사용할 수 없습니다. 나중에 다시 시도하십시오.

예제

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

개인정보

이 엔드포인트는 개인정보를 다룹니다: 자격 증명. KeenAuth API의 개인정보에서 저장되는 항목, 보관 기간, 삭제 방법을 설명합니다. 어떤 필드에도 특수 범주의 개인정보(건강, 생체 정보, 종교, 정치적 견해, 성적 지향)를 보내지 마십시오.