Vincular usuário a grupo

Modificado em Qui, 29 Out na (o) 5:08 PM

Grupos organizam os usuários por área, equipe ou unidade — e definem o que cada um vê na plataforma. Este artigo mostra como colocar um usuário em um grupo, como tirá-lo e os dois cuidados que evitam vínculos errados.

Neste artigo

  1. Antes de começar
  2. Dois caminhos
  3. Vincular e desvincular
  4. Pelo cadastro de usuário
  5. Cuidados
  6. Problemas comuns

Antes de começar

Dois caminhos

SituaçãoUse
Vincular, desvincular ou mover usuários entre gruposPOST /{customer_id}/users/groups/import — este artigo
Cadastrar ou atualizar o usuário e já colocá-lo em gruposO array groups do cadastro de usuário (POST /{customer_id}/users)

O primeiro é o único que remove vínculo de forma direta. Para manter os grupos sincronizados com o seu sistema, é ele que você vai usar.

Vincular e desvincular

1Descubra o código externo do grupo

A remoção de vínculo funciona pelo código externo do grupo. Consulte pelos códigos que você conhece — vários de uma vez, separados por vírgula:

GET https://sandbox.engage.bz/api/v1/{customer_id}/groups/externalCodes/{codigo1},{codigo2}
Authorization: Bearer {access_token}

Resposta da consulta de grupos por código externo, com o group_id e o external_code destacados

Cada item de results traz o group_id, o name e o external_code do grupo. Se nenhum código for encontrado, a resposta é HTTP 404 — trate como "zero resultados".

2Envie os vínculos

POST https://sandbox.engage.bz/api/v1/{customer_id}/users/groups/import?customerToken={customer_token}
Authorization: Bearer {access_token}
Content-Type: application/json

[
  { "user_login": "joao.silva", "group_code": "depto-vendas",  "status": "ativo" },
  { "user_login": "joao.silva", "group_code": "depto-suporte", "status": "delete" }
]
CampoObrigatórioExemploObservação
user_loginSimjoao.silvaLogin de um usuário que já existe na instância
group_codeSimdepto-vendasO código externo do grupo. Para remover, só o código externo funciona
statusSimativoativo ou true vinculam; delete, inativo ou false removem

Corpo do request de vínculo no Postman: um objeto que vincula e outro que remove

Sucesso

Cada item volta com "success": true e a mensagem "Operação concluída com sucesso". Confira o resultado consultando o usuário: os grupos aparecem no campo groups.

Pelo cadastro de usuário

Ao criar ou atualizar o usuário, o array groups aceita os IDs dos grupos:

[
  { "login": "joao.silva", "name": "João da Silva", "status": true, "groups": [9518, 9517] }
]

Atenção

O array groups soma, nunca substitui. Enviar "groups": [10] para quem já está nos grupos 20 e 30 deixa o usuário em 10, 20 e 30. Para mover alguém de grupo, vincule ao novo e remova o antigo pela Etapa 2.

Cuidados

Cuidado

Para remover, o group_code precisa ser o código externo. Com o ID numérico, o vínculo não é removido — e a resposta ainda assim vem como sucesso. Para vincular, ID e código externo funcionam igual; só a remoção é exigente.

  • HTTP 200 não significa que tudo deu certo. Percorra results e confira o success de cada item.
  • Grupo inativo não aceita vínculo. Se o grupo foi desativado na área administrativa, o retorno é invalid_group_code.
  • Não use PUT /users/{userId}/groups. Esse endpoint não grava os vínculos e mesmo assim responde 201 Created. Use os caminhos deste artigo.
  • Envie sempre o cabeçalho Authorization: Bearer nas consultas de grupos.
  • Vínculo "sumiu" sem ninguém mexer? Confira se a sua rotina não está enviando delete para grupos que não deveria, e se o grupo não foi inativado.

Problemas comuns

O código de cada erro vem em detail_messages[].event_code.

O que apareceCausa provávelO que fazer
login_is_requiredFaltou user_login em algum itemPreencha o login em todos os itens
invalid_loginO login não existe na instânciaCadastre o usuário antes
group_code_is_requiredFaltou group_codeInforme o código externo do grupo
invalid_group_codeGrupo inexistente ou inativoConfira na consulta da Etapa 1
status_is_required ou status_invalidostatus ausente ou fora dos valores aceitosUse ativo, true, delete, inativo ou false
duplicate_dataO mesmo par usuário + grupo aparece duas vezes no envioRemova a duplicidade
success: true, mas o vínculo continuaRemoção feita com o ID numéricoRepita usando o código externo
success: true, mas o usuário está em grupos a maisO array groups do cadastro somaRemova os antigos pela Etapa 2
HTTP 401Token expirado ou sem a permissão necessáriaGere um novo token e confira a permissão Importação de dados

Próximo passo

Confira os vínculos consultando o usuário pela API — veja Consultar usuário.

Precisa de ajuda?

Escreva para meajuda@engage.bz informando o customer_id, o ambiente e a resposta completa da chamada. Nunca envie senhas, tokens ou o client_secret por e-mail.

Este artigo foi útil?

Que bom!

Obrigado pelo seu feedback

Desculpe! Não conseguimos ajudar você

Obrigado pelo seu feedback

Deixe-nos saber como podemos melhorar este artigo!

Selecione pelo menos um dos motivos
A verificação do CAPTCHA é obrigatória.

Feedback enviado

Agradecemos seu esforço e tentaremos corrigir o artigo