User no nível conceitual, o endpoint canônico para validar credenciais e o CRUD administrativo que você usa para criar, atualizar e vincular usuários ao seu CRM ou ERP.
O modelo User
Cada usuário pertence a um único tenant e é identificado por umid (GUID). O mesmo usuário nunca existe em dois tenants: se a mesma pessoa participa de duas comunidades, são dois registros distintos.
Os campos mais usados em respostas autenticadas:
O contrato detalhado de cada response (nomes e tipos exatos de todos os campos) está publicado na aba API Reference, na tag Users / Auth. Os JSON desta página são ilustrativos.
Papéis (role)
Status da conta (status)
Existe em toda comunidade um usuário de sistema com
userName = "admin" (interno da plataforma). Ele nunca aparece em listagens, buscas ou seletores. Ignore-o caso apareça em algum export.Validar credencial e descobrir o usuário associado
O endpoint canônico para parceiros validarem uma credencial e descobrirem o usuário associado éGET /auth/me. Use-o no boot da sua integração e sempre que precisar confirmar o contexto.
- Confirmar que a chave é válida e aponta pro tenant certo (campo
customer). - Capturar o
iddo usuário associado à chave (útil pra logs e auditoria do seu lado). - Renovar a sessão com os campos
accessToken/refreshTokenretornados.
CRUD administrativo de usuários
Parceiros com API Key administrativa gerenciam usuários direto pela API, sob o prefixo/admin/users. Esta é a superfície que você usa para manter a base da Cativa em sincronia com o seu sistema.
Criar um usuário
201 Created):
Achar um usuário pelo email
O caminho mais direto quando você tem o email vindo do seu CRM, sem precisar douserId:
Atualizar campos pontuais
Prefira as rotas de campo único para mudanças focadas: elas são mais seguras que umPUT completo (não sobrescrevem outros campos por acidente).
Vincular o id do seu sistema (external-id)
Guarde o identificador do seu CRM/ERP no usuário Cativa. Isso permite correlacionar registros nos dois lados sem depender do email (que pode mudar).
Banir e excluir
Fluxo ponta a ponta: sincronizar um membro do CRM
1
Procure pelo email
Chame
GET /admin/users/email/{email}. Se retornar 200, o usuário já existe: guarde o id e pule para o passo 3.2
Crie se não existir
Se o lookup retornar
404, chame POST /admin/users com os dados do CRM. Guarde o id da resposta.3
Vincule o id externo
Chame
PATCH /admin/users/{userId}/external-id com o identificador do seu sistema. A partir daqui os dois lados ficam correlacionados.4
Libere acesso com badge
Atribua o badge que dá acesso ao grupo/curso certo. Veja Badges como permissão.
Endpoints do próprio usuário (self-service)
Além do CRUD admin, o usuário autenticado gerencia o próprio perfil:GET /users/profile/{userName}. Perfil público de um usuário pelo handle.PUT /users/profile. Atualiza o próprio perfil.GET /users/search?query=.... Busca usuários por nome (respeita o filtro do usuário de sistemaadmin).
Erros comuns
404 Not Found no lookup por email
404 Not Found no lookup por email
O usuário não existe naquele tenant. É o sinal esperado para criar via
POST /admin/users.409 Conflict ao criar
409 Conflict ao criar
Já existe um usuário com aquele email no tenant. Use o lookup por email antes de criar (padrão do fluxo de sincronização).
403 Forbidden nas rotas /admin
403 Forbidden nas rotas /admin
A chave não tem escopo administrativo. Rotas
/admin/users exigem API Key administrativa. Peça a credencial certa ao admin do tenant.Próximos passos
Badges como permissão
Como atribuir credenciais para liberar acesso a grupos e cursos.
Comunidades e Espaços
Onde o usuário se encaixa na hierarquia Comunidade > Espaço > Grupo.
