ServiceUser

최종 수정: 2026년 7월 3일

ServiceUserServiceLogin으로 가입한 제품 end-user, 곧 회원 계정입니다. Weegloo 플랫폼 계정(콘텐츠 스튜디오에 로그인하는 Weegloo User)과는 별개의 신원이며, ServiceUser의 토큰은 ACMA/ACDA에 인증됩니다.

ServiceUser는 회원이 ServiceLogin으로 직접 가입할 때 만들어집니다. 그래서 이 API에는 생성·삭제 엔드포인트가 없고, 조회와 관리자(Weegloo User)에 의한 일부 수정만 있습니다.

리소스 구조

다음은 ServiceUser 한 명의 단일 조회 응답입니다. sys(시스템 속성)와 함께, 회원 표시 정보와 권한 설정을 담는 본문 속성 nickname·avatarUrl·roleOverride·enableLogin·isAdmin을 가집니다.

{
  "sys": {
    "id": "3trmXRM3RqbgSnifyg7PSusr01Ex",
    "type": "ServiceUser",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "provider": "google",
    "email": "buyer@example.com",
    "createdAt": "2026-06-18T12:50:00.000Z",
    "updatedAt": "2026-06-18T12:50:00.000Z"
  },
  "nickname": "단골손님",
  "avatarUrl": "https://lh3.example.com/a/buyer-avatar",
  "roleOverride": null,
  "enableLogin": true,
  "isAdmin": false
}

주요 키:

  • sys.email: 회원이 가입에 쓴 이메일 주소입니다. sys.provider와 함께 어떤 계정으로 가입했는지를 나타냅니다.
  • sys.provider: 가입에 쓴 OAuth 제공자입니다(예: google).
  • roleOverride: 이 회원에게만 다른 ServiceUserRole을 줄 때 넣는 Refer입니다. 비어 있으면(null) ServiceLogin의 기본 역할을 따릅니다.
  • isAdmin: 켜면 이 회원이 다른 회원이 만든 리소스를 삭제할 수 있게 됩니다. 좁은 권한이며, 다른 회원 리소스의 수정·읽기 권한을 주지는 않습니다.

시스템 속성 (sys)

모든 ServiceUser는 공통 시스템 속성을 sys 객체에 담습니다. spaceRefer 모양({ "sys": { "id", "type": "Refer", "targetType" } })으로 들어갑니다.

속성타입설명
idstring리소스 고유 식별자.
typestring리소스 종류. ServiceUser는 항상 "ServiceUser".
spaceRefer<Space>ServiceUser가 속한 Space.
providerstring가입에 쓴 OAuth 제공자 (예: google).
emailstring가입에 쓴 이메일 주소.
createdAtstring (date-time)가입(생성) 시각.
updatedAtstring (date-time)마지막 수정 시각.

ServiceUser는 회원이 자기 가입으로 만드는 리소스라, 다른 CMA 리소스와 달리 syscreatedBy·updatedBy·version이 없습니다. version이 없으므로 수정(PUT·PATCH)에도 X-Weegloo-Version 헤더를 보내지 않습니다. 발행 개념도 없어 publish·archive·status도 없습니다.

본문 속성

속성타입설명
nicknamestring회원 표시 이름.
avatarUrlstring프로필 이미지 주소 (선택).
roleOverrideRefer<ServiceUserRole>이 회원에게만 줄 ServiceUserRole (선택). 지정하면 ServiceLogin의 기본 역할보다 우선합니다.
enableLoginboolean로그인 허용 여부. 끄면 이 회원의 로그인을 막습니다.
isAdminboolean켜면 다른 회원이 만든 리소스를 삭제할 수 있습니다. 좁은 권한이며, 다른 회원 리소스의 수정·읽기 권한은 주지 않습니다.

회원 관리

ServiceUser는 가입으로 생기므로 생성 엔드포인트가 없고, 삭제 엔드포인트도 없습니다. 관리자(Weegloo User)가 수정(PUT·PATCH)으로 조정할 수 있는 것은 다음 세 가지입니다.

  • roleOverride 지정/해제: 특정 회원에게만 다른 ServiceUserRole을 줍니다. 유료 등급, 모더레이터, 베타 그룹처럼 한 회원만 다르게 대우할 때 씁니다. 지정한 roleOverrideServiceLogindefaultRole보다 우선합니다.
  • enableLogin 토글: 끄면 그 회원의 로그인을 막습니다.
  • isAdmin 토글: 켜면 모더레이션을 위해 다른 회원이 만든 리소스를 삭제할 수 있게 됩니다.

isAdmin은 다른 회원 리소스에 대한 삭제만 추가하는 좁은 플래그입니다. 다른 회원 리소스의 수정·읽기 권한을 주지 않으며, 이 회원을 Weegloo 콘텐츠 스튜디오 관리자(CMA 관리자)로 승격하지도 않습니다. 또 회원이 가진 ServiceUserRole이 애초에 허용하지 않는 작업까지 열어 주지는 않습니다.

API

아래 모든 엔드포인트의 기준 URL은 https://cma.weegloo.com/v1이며, Authorization 헤더에 CMA를 인증하는 Bearer 토큰이 필요합니다. ServiceUserversion이 없는 리소스라 수정(PUT·PATCH)에도 X-Weegloo-Version 헤더를 보내지 않습니다. 생성·삭제 엔드포인트는 없습니다(가입으로 생성).