Controles de acesso
Corresponde à aba Controles de acesso, dentro da página de um grupo de acesso. Cada registro libera uma página do sistema ao grupo, com um nível de permissão. As páginas disponíveis são as do pacote contratado pelo cliente, e os ids das páginas e dos níveis vêm das listas de apoio de Grupos de acesso.
Todos os endpoints desta página começam pelo uuid do grupo, access_group_uuid.
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
| GET | /administrative/access-groups/{access_group_uuid}/controllers | Lista as páginas liberadas ao grupo |
| POST | /administrative/access-groups/{access_group_uuid}/controllers | Libera uma página ao grupo |
| GET | /administrative/access-groups/{access_group_uuid}/controllers/{id} | Consulta uma página liberada |
| PUT | /administrative/access-groups/{access_group_uuid}/controllers/{id} | Altera a página liberada |
| DELETE | /administrative/access-groups/{access_group_uuid}/controllers/{id} | Remove a página do grupo |
GET /administrative/access-groups/{access_group_uuid}/controllers
Lista as páginas liberadas ao grupo, ordenadas por módulo e pela ordem da página,
salvo se columnName e orderData forem informados.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| search | Texto livre: busca pelo nome do módulo, da página ou do grupo |
| controller_id | Traz só a liberação da página com esse id |
| columnName | Coluna para ordenar |
| orderData | Sentido da ordenação: asc ou desc |
| per_page | Quantidade de registros por página |
| page | Número da página, quando per_page é informado |
Resposta (200): lista de liberações, direta ou paginada. Campos principais:
id, access_group_id, controller_id, permission_id, access_group,
controller, module, permission e user_update_name.
Exemplo:
curl https://api.pedagogo.app/administrative/access-groups/<uuid-do-grupo>/controllers \
-H "Accept: application/json" \
-H "Authorization: Bearer <token-de-sessao>"
POST /administrative/access-groups/{access_group_uuid}/controllers
Libera uma página ao grupo com o nível de permissão informado. Se a página já estiver liberada ao grupo, ou tiver sido removida antes, o registro existente é atualizado com o novo nível. Ele não é duplicado.
Corpo (JSON)
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| controller_id | Sim | Número inteiro | id da página. Deve existir. Veja a lista de apoio em Grupos de acesso |
| permission_id | Sim | Número inteiro | id do nível de permissão. Veja a lista de apoio em Grupos de acesso |
Resposta (201): a liberação criada.
Exemplo:
curl -X POST https://api.pedagogo.app/administrative/access-groups/<uuid-do-grupo>/controllers \
-H "Accept: application/json" \
-H "Authorization: Bearer <token-de-sessao>" \
-H "Content-Type: application/json" \
-d '{"controller_id": 1, "permission_id": 1}'
GET /administrative/access-groups/{access_group_uuid}/controllers/{id}
Devolve uma liberação de página do grupo pelo id.
PUT /administrative/access-groups/{access_group_uuid}/controllers/{id}
Altera a liberação. Envie apenas os campos que devem mudar.
Corpo (JSON)
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| controller_id | Não | Número inteiro | id da página. Deve existir |
| permission_id | Não | Número inteiro | id do nível de permissão |
Resposta (200): a liberação alterada.
DELETE /administrative/access-groups/{access_group_uuid}/controllers/{id}
Remove a página do grupo. A exclusão é lógica.
Resposta (200): sem conteúdo relevante (null).