ServiceUser

ServiceUser é o end-user do produto que se cadastrou via ServiceLogin, ou seja, uma conta de membro. É uma identidade distinta da conta da plataforma Weegloo (o Weegloo User que faz login no estúdio de conteúdo), e o token de um ServiceUser é autenticado contra a ACMA/ACDA.

O ServiceUser é criado quando o membro se cadastra diretamente via ServiceLogin. Por isso, esta API não tem endpoint de criação, apenas a consulta e algumas modificações feitas por um administrador (Weegloo User).

Estrutura do recurso

A seguir está a resposta de consulta individual de um ServiceUser. Junto com sys (propriedades de sistema), ele tem as propriedades de corpo nickname, avatarUrl, roleOverride e enableLogin, que guardam as informações de exibição do membro e as configurações de permissão.

{
  "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": "Cliente fiel",
  "avatarUrl": "https://lh3.example.com/a/buyer-avatar",
  "roleOverride": null,
  "enableLogin": true
}

Chaves principais:

  • sys.email: o endereço de e-mail que o membro usou para se cadastrar. Junto com sys.provider, indica com qual conta o cadastro foi feito.
  • sys.provider: o provedor OAuth usado no cadastro (por exemplo, google).
  • roleOverride: o Refer que se informa para atribuir um ServiceUserRole diferente apenas a este membro. Se estiver vazio (null), segue a função padrão do ServiceLogin.

Propriedades de sistema (sys)

Todo ServiceUser guarda as propriedades de sistema comuns no objeto sys. O space entra no formato Refer ({ "sys": { "id", "type": "Refer", "targetType" } }).

PropriedadeTipoDescrição
idstringIdentificador único do recurso.
typestringTipo do recurso. Para o ServiceUser é sempre "ServiceUser".
spaceRefer<Space>O Space ao qual este ServiceUser pertence.
providerstringProvedor OAuth usado no cadastro (por exemplo, google).
emailstringEndereço de e-mail usado no cadastro.
createdAtstring (date-time)Momento do cadastro (criação).
updatedAtstring (date-time)Momento da última modificação.

Como o ServiceUser é um recurso que o próprio membro cria ao se cadastrar, ao contrário de outros recursos da CMA, ele não tem createdBy, updatedBy nem version em sys. Como não há version, a modificação (PUT, PATCH) também não envia o cabeçalho X-Weegloo-Version. Também não existe o conceito de publicação, portanto não há publish, archive nem status.

Propriedades de corpo

PropriedadeTipoDescrição
nicknamestringNome de exibição do membro.
avatarUrlstringEndereço da imagem de perfil (opcional).
roleOverrideRefer<ServiceUserRole>O ServiceUserRole a atribuir apenas a este membro (opcional). Se informado, tem precedência sobre a função padrão do ServiceLogin.
enableLoginbooleanSe o login é permitido. Se desativado, bloqueia o login deste membro.

Gerenciamento de membros

O ServiceUser surge a partir do cadastro. O que um administrador (Weegloo User) pode ajustar por meio da modificação (PUT, PATCH) são estas duas coisas.

  • Definir/remover roleOverride: atribui um ServiceUserRole diferente apenas a um membro específico. Usa-se quando se quer tratar um único membro de forma diferente, como em planos pagos, moderadores ou grupos beta. O roleOverride informado tem precedência sobre o defaultRole do ServiceLogin.
  • Alternar enableLogin: se desativado, bloqueia o login daquele membro.

Remover um membro da lista é feito no Estúdio de Conteúdo. Os passos e o que some junto estão em Gerenciar membros do serviço.

Para que um membro possa lidar também com os recursos criados por outros membros, crie à parte um ServiceUserRole que contenha essa permissão e informe-o no roleOverride daquele membro. O que um membro acessa é definido pelo ServiceUserRole aplicado a ele. Se o filtro createdBy da regra for definido como :self, aquela ação vale apenas para o que o próprio membro criou; se o filtro não for aplicado, ela vale também para o que outros membros criaram. Como criar as duas funções separadamente é tratado em ServiceUserRole.

API

A URL base de todos os endpoints abaixo é https://cma.weegloo.com/v1, e é necessário um token Bearer que autentica a CMA no cabeçalho Authorization. Como o ServiceUser é um recurso sem version, a modificação (PUT, PATCH) também não envia o cabeçalho X-Weegloo-Version. Não há endpoint de criação (criação por cadastro).

Ao filtrar a consulta de lista por sys.email, use apenas os operadores da família de igualdade exata (eq·ne·in·nin). O endereço do membro é armazenado criptografado, portanto sobre essa representação só é possível decidir se é igual ou diferente; prefix e as comparações de ordem devolvem 0 resultado, sem erro. Se você procurou um membro pelo endereço e o resultado veio vazio, confira primeiro o operador. Uma busca por parte do endereço não pode ser feita com este filtro.