Skip to content

Permissions

1. Obtener roles

- local_servicerefactor_get_roles

Descripción: Obtiene la lista de todos los roles configurados.

Endpoint: local_servicerefactor_get_roles
Método: GET Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_get_roles

Respuestas:

Devuelve el listado de roles

{
"status": 200,
"code": 0,
"message": "",
"body": [
"roleid": ID de rol
"name": Nombre del rol
"description": Descripción del rol
]
}

2. Obtener permisos de un rol (Admin/Manager)

- local_servicerefactor_get_permission_role

Descripción: Permite a un administrador o gestor (roles id 1 o 2) obtener el árbol completo de permisos configurados para un rol específico (“roleid”). Permite filtrar por secciones usando “options”.

Endpoint: local_servicerefactor_get_permission_role
Método: GET
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_get_permission_role
  • usertoken: string | Token del usuario (Debe ser Admin o Manager)
  • roleid: int | ID del rol a consultar
  • options: array | Filtros opcionales [{ "name": "courses" }, { "name": "users" }]

Respuestas:

Devuelve la estructura de permisos para ese rol

{
"status": 200,
"code": 0,
"message": "",
"body": [
"availableview": Permisos para visualizar contenidos y apartados,
"course": Permisos dentro del curso,
"library": Permisos de la libreria,
"promotions": Permisos dentro de las promociones,
"users": Permisos sobre los usuarios,
"followup": Permisos de seguimiento
]
}

3. Obtener permisos del usuario actual

- local_servicerefactor_get_user_permissions

Descripción: Obtiene el árbol de permisos asignados al usuario que realiza la petición (basado en su usertoken). Devuelve qué acciones puede o no realizar según su rol.

Endpoint: local_servicerefactor_get_user_permissions
Método: GET
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_get_user_permissions
  • usertoken: string | Token del usuario
  • options: array | Filtros opcionales [{ "name": "courses" }] para reducir la respuesta.

Respuestas:

Devuelve la estructura de permisos del usuario

{
"status": 200,
"code": 0,
"message": "",
"body": [
"availableview": Permisos para visualizar contenidos y apartados,
"course": Permisos dentro del curso,
"library": Permisos de la libreria,
"promotions": Permisos dentro de las promociones,
"users": Permisos sobre los usuarios,
"followup": Permisos de seguimiento
]
}

4. Actualizar estado de permisos

- local_servicerefactor_update_permissions_status

Descripción: Servicio para activar o desactivar permisos específicos para un rol. Solo accesible para administradores o managers.

Endpoint: local_servicerefactor_update_permissions_status
Método: POST
Argumentos:

  • wstoken: string | token de Manager
  • moodlewsrestformat: json | formato de la respuesta
  • wsfunction: string | local_servicerefactor_update_permissions_status
  • usertoken: string | Token del usuario (Admin/Manager)
  • role: int | ID del rol a modificar (roleid)
  • permissionid: string | IDs de los permisos separados por coma (ej. “10,15,20”)
  • status: string | Nuevos estados (0 o 1) separados por coma, correspondientes a los IDs (ej. “1,0,1”)

Respuestas:

Se actualizaron los permisos correctamente

{
"status": 200,
"code": 0,
"message": ""
}