ServiceUser

最后更新:2026年7月3日

ServiceUser 是通过 ServiceLogin 注册的产品 end-user,也就是会员账号。它与 Weegloo 平台账号(登录内容工作室的 Weegloo User)是相互独立的身份,ServiceUser 的令牌针对 ACMA/ACDA 进行认证。

ServiceUser 在会员通过 ServiceLogin 自行注册时创建。因此该 API 没有创建和删除端点,只有查询以及由管理员(Weegloo User)执行的部分修改。

资源结构

下面是单个 ServiceUser 的单条查询响应。除了 sys(系统属性)之外,它还具有承载会员展示信息和权限设置的本体属性 nicknameavatarUrlroleOverrideenableLoginisAdmin

{
  "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 资源不同,sys 中没有 createdByupdatedByversion。由于没有 version,修改(PUTPATCH)时也不发送 X-Weegloo-Version 头。它也没有发布概念,因此没有 publisharchivestatus

本体属性

属性类型说明
nicknamestring会员展示名称。
avatarUrlstring头像图片地址(可选)。
roleOverrideRefer<ServiceUserRole>仅为该会员指定的 ServiceUserRole(可选)。指定后将优先于 ServiceLogin 的默认角色。
enableLoginboolean是否允许登录。关闭后将阻止该会员登录。
isAdminboolean开启后可删除其他会员创建的资源。这是一项受限权限,不会授予对其他会员资源的修改和读取权限。

会员管理

ServiceUser 通过注册产生,因此没有创建端点,也没有删除端点。管理员(Weegloo User)可以通过修改(PUTPATCH)调整的内容有以下三项。

  • 指定/解除 roleOverride:仅为特定会员指定另一个 ServiceUserRole。用于像付费等级、版主、Beta 分组那样仅对单个会员区别对待的场景。指定的 roleOverride 优先于 ServiceLogindefaultRole
  • 切换 enableLogin:关闭后将阻止该会员登录。
  • 切换 isAdmin:开启后,为了便于审核,该会员可以删除其他会员创建的资源。

isAdmin 是仅追加对其他会员资源的删除权限的受限标志。它不会授予对其他会员资源的修改和读取权限,也不会将该会员提升为 Weegloo 内容工作室管理员(CMA 管理员)。此外,它也不会开放会员所持 ServiceUserRole 本就不允许的操作。

API

下面所有端点的基准 URL 均为 https://cma.weegloo.com/v1,并且需要在 Authorization 头中提供用于对 CMA 进行认证的 Bearer 令牌。ServiceUser 是没有 version 的资源,因此修改(PUTPATCH)时也不发送 X-Weegloo-Version 头。没有创建和删除端点(通过注册创建)。