Fluxo de integração de Grupos
Este fluxo visa o gerenciamento de grupos na plataforma Gupy Educação Corporativa através da API
Grupos são coleções de usuários e tem por finalidade facilitar a separação de permissões de acesso ao conteúdo disponível dentro da Gupy Educação Corporativa. O caso mais comum é a utilização de grupos para especificar quais usuários terão acesso a uma determinada campanha.
Cadastrando Grupos:
Para cadastrar um usuário temos os seguintes campos disponíveis para envio:
Nome do campo | Descrição | Obrigatório/regra de negócio |
---|---|---|
name | nome do grupo | Obrigatório |
description | descrição do grupo | Opcional |
Início do Fluxo
- Acesse o endpoint Cadastrar Grupo.
- Preencha o campo obrigatório “name” e opcionalmente acrescente uma descrição para o grupo.
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição:
curl --request POST \
--url 'https://core.api.niduu.com/integrate/groups?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"name": "Administradores",
"description": "Admin com acesso full"
}
'
Listando grupos:
- Acesse o endpoint Listar Grupos, passando no parâmetro q o nome do grupo ou não passe nenhum parâmetro e obtenha a lista completa de grupos cadastrados.
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Atualizando grupos:
- Recupere o id dos grupos através do endpoint Listar Grupos e acesse o endpoint Atualizar Grupo;
- Coloque o id no parâmetro respectivo e faça as alterações necessárias no nome e/ou descrição, sendo a alteração de nome obrigatória.
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição:
curl --request PUT \
--url 'https://core.api.niduu.com/integrate/groups/31292/?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"name": "Teste"
}
'
Exemplo de response:
{
"id": 31292,
"name": "Teste 1",
"description": "esse é um grupo teste",
"created_at": "2023-06-22T19:18:49.971587Z",
"created_at_i18n": "22/06/2023 19:18"
}
Excluindo grupos (A exclusão é permanente e irreversível)
- Recupere o id dos grupos através do endpoint Listar Grupos, é possível procurar seu id passando no parâmetro q o nome do grupo;
- Acesse o endpoint Excluir Grupo e preencha o parâmetro group_id;
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição:
curl --request DELETE \
--url 'https://core.api.niduu.com/integrate/groups/31292/?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
Atenção:
Se a deleção do grupo implicar na remoção de colaboradores, a request inicial falhará. Para prosseguir será necessário reenviar a solicitação de exclusão com o cabeçalho (header) HTTP confirmation-code recebido na resposta da primeira request.
Exemplo de response:
{
"detail": "This action will REMOVE 2 users who are already in this group. Do you confirm these deletions?",
"confirmation_code": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
}
Refaça a requisição passando o confirmation_code nos headers
Adicionando pessoas usuárias a um grupo:
- Recupere o id das pessoas usuárias através do endpoint Listar Usuários, é possível procurar seu id passando no parâmetro q seu nome, cpf ou e-mail;
- Recupere o id dos grupos através do endpoint Listar Grupos, é possível procurar seu id passando no parâmetro q o nome do grupo;
- Acesse o endpoint Adicionar Membro a um Grupo e preencha o parâmetro id com o id da pessoa usuária e o group_id com o id do grupo que a pessoa será inserida;
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição:
curl --request POST \
--url 'https://core.api.niduu.com/integrate/groups/31292/members/?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'\
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{"id":677685}'
Visão geral de pessoas e grupos:
Para ver grupos em que uma pessoa usuária está inserida:
- Recupere o id das pessoas usuárias através do endpoint Listar Usuários, é possível procurar seu id passando no parâmetro q seu nome, cpf ou e-mail;
- Acesse o endpoint Listar Grupos de um Usuário e insira o id do usuário em seu respectivo parâmetro;
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição de busca pelo usuário utilizando o nome no parâmetro "q":
curl --request GET \
--url 'https://auth.api.niduu.com/integrate/users?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&q=mariana' \
--header 'accept: application/json'
Exemplo de response:
{
"id": 677685,
"metadata": null,
"is_pre_registration": true,
"mobile_internet_allowed": true,
"times_allowed": null,
"created_at": "2023-06-21T18:57:11.668154Z",
"created_at_i18n": "21/06/2023 18:57",
"blocked": false,
"name": "Mariana",
"short_name": "Mariana",
"nin": null,
"email": "[email protected]",
"id_number": null,
"birth_date": "1990-12-12",
"birth_date_i18n": "12/12/1990"
}
]
}
Exemplo de requisição Listando Grupos que o usuário está inserido:
curl --request GET \
--url 'https://core.api.niduu.com/integrate/groups_of/677685/?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'accept: application/json'
Exemplo de response:
{
"next_cursor": null,
"prev_cursor": null,
"results": [
{
"id": 31292,
"name": "Teste",
"description": "esse é um grupo teste",
"created_at": "2023-06-22T19:18:49.971587Z",
"created_at_i18n": "22/06/2023 19:18"
}
]
}
Para ver membros de um grupo:
- Recupere o id do grupo através do endpoint Listar Grupos, é possível procurar seu id passando no parâmetro q o nome do grupo;
- Acesse o endpoint Listar Membros de um Grupo;
- Insira o id do grupo no respectivo campo;
- Passe o token de acesso no parâmetro secret e clique em “Try it!”
Exemplo de requisição buscando o id do grupo passando o parâmetro "q" com o nome do grupo.
curl --request GET \
--url 'https://core.api.niduu.com/integrate/groups?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&q=teste' \
--header 'accept: application/json'
Exemplo de response:
{
"next_cursor": null,
"prev_cursor": null,
"results": [
{
"id": 31292,
"name": "Teste",
"description": "esse é um grupo teste",
"created_at": "2023-06-22T19:18:49.971587Z",
"created_at_i18n": "22/06/2023 19:18"
},
Exemplo de requisição para ver membros do grupo:
curl --request GET \
--url 'https://core.api.niduu.com/integrate/groups/31292/members/?secret=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'accept: application/json'
Exemplo de response:
{
"next_cursor": null,
"prev_cursor": null,
"results": [
{
"id": 677685,
"name": "Mariana",
"nin": null,
"email": "[email protected]"
},
Principais dúvidas:
- Podemos fazer a carga por grupos de diretoria e depois dentro da Gupy criar outros grupos também?
Sim, é possível, também é possível fazer a criação/gestão de grupos via interface https://niduu.com/admin/groups/list
Updated 5 months ago