Skip to main content
PUT
Update User

사용자 업데이트

기존 사용자 계정을 새로운 정보로 업데이트합니다.

엔드포인트

설명

이 끝점을 통해 관리자는 기존 사용자 계정을 업데이트할 수 있습니다. 이름, 이메일, 역할, 라이선스 등급 및 기타 계정 설정과 같은 사용자 세부 정보를 수정할 수 있습니다.

인증

필수: 관리자 권한이 있는 API 키

경로 매개변수

요청 본문

요청 예시

성공 응답

상태 코드: 200 OK

응답 필드

사용 예

자바스크립트

파이썬

cURL

오류 응답

400 잘못된 요청

401 승인되지 않음

403 금지됨

404 찾을 수 없음

409 갈등

검증 및 비즈니스 규칙

  • 라이센스 값: 허용된 라이선스(Essential, Growth, Ultra, Early Access)에 있어야 합니다. 잘못된 값은 400을 반환합니다.
  • 라이센스 용량: checkLicenseCapacity을 통해 적용됩니다. 선택한 계층이 가득 차면 400을 반환합니다.
  • 라이선스 다운그레이드 가드: 하위 계층으로 변경하여 개인 인덱스 할당량을 줄이는 경우 현재 개인 인덱스 수가 INDEX_QUOTAS[new_license]를 초과하면 변경이 차단됩니다. 명시적인 지침에 따라 400을 반환합니다.
  • 이메일 정규화: 유효성 검사 및 저장 전에 소문자로 자르고 잘립니다.
  • 사용자 이름 정규화: 유효성 검사 및 저장 전에 소문자로 변경되고 잘립니다.
  • 이메일 형식: 간단한 정규식 유효성 검사; 잘못된 이메일은 400을 반환합니다.
  • 사용자 이름 형식: ^[a-z0-9.-]{3,30}$와 일치해야 합니다. 잘못된 사용자 이름은 400을 반환합니다.
  • 고유성: email, usernamename은 고유해야 합니다. 충돌은 409를 반환합니다.

정규화 및 저장

  • emailusername은 항상 소문자로 저장되고 잘립니다.

일반적인 오류 형태

400 유효하지 않은 라이센스

400 라이센스를 사용할 수 없음

400 라이센스 다운그레이드가 할당량을 초과합니다.

400 잘못된 이메일

400 잘못된 사용자 이름

409 충돌(고유성)

사용자 역할

라이선스 등급

계정 상태

사용 사례

  • 역할 관리: 액세스 제어를 위한 사용자 역할 업데이트
  • 라이선스 업그레이드: 사용자 라이선스 등급 변경
  • 계정 관리: 사용자 정보 및 메타데이터 업데이트
  • 상태 관리: 사용자 계정 활성화 또는 정지
  • 프로필 업데이트: 사용자 이름, 이메일 또는 기타 세부정보 수정

속도 제한

  • 기본값: 분당 요청 100개
  • 일일: 일일 요청 10,000건
  • 월간: 월간 요청 300,000건

메모

  • 관리자만 사용자 계정을 업데이트할 수 있습니다.
  • 이메일 주소는 모든 사용자에게 고유해야 합니다.
  • 비밀번호 업데이트는 선택사항이며 제공된 경우에만 적용됩니다.
  • 메타데이터 업데이트가 기존 메타데이터와 병합됩니다.
  • updatedAt 타임스탬프는 작업 성공 시 자동으로 업데이트됩니다.

인증

Authorization
string
header
필수

API key authentication using Bearer token format. Example: Authorization: Bearer sk-your-api-key-here

경로 매개변수

userId
string
필수

User ID to update

본문

application/json
name
string

User's full name

예시:

"John Doe Updated"

username
string

Unique username

예시:

"johndoe_updated"

email
string<email>

User's email address

예시:

"john.updated@example.com"

password
string

User's new password (optional)

예시:

"newsecurepassword123"

role
enum<string>

User's role

사용 가능한 옵션:
admin,
user,
globalReader
예시:

"user"

license
enum<string>

User's license tier

사용 가능한 옵션:
Essential,
Growth,
Ultra,
Early Access
예시:

"Growth"

status
enum<integer>

User status (0=inactive, 1=active)

사용 가능한 옵션:
0,
1
예시:

1

roleId
string

Custom role ID (MongoDB ObjectId)

예시:

"60a7c8f5e8b4f5001f7a8c24"

setupCompleted
boolean

Whether user setup is completed

예시:

true

isVerified
boolean

Whether user is verified

예시:

true

응답

User updated successfully

success
boolean
예시:

true

message
string
예시:

"User updated successfully"

user
object