Course services
Servicios relacionados a las acciones de los cursos.
1. Crear curso.
- local_contentdata_create_course
Descripción:
Servicio para crear curso.
Endpoint: local_contentdata_create_course
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_create_course
- usertoken: string | token del usuario
- fullname: string | nombre completo del curso
- shortname: string | nombre corto del curso
- categoryid: int | id de la categoría del curso
- course_duration_days: int | duración del curso en días
- course_duration_hours: int | duración del curso en horas
- modules_duration_days: int | duración de los módulos en días
- complete_course: int | bandera que indica si el curso está completo o no (1 o 0)
- photo: file | archivo de la foto de portada para el curso
Respuestas:
Se creo el curso
{ "status": 200, "code": 0, "message": "", "body": [ 'photourl': URL de la foto del curso ]}Error producido si el usuario no tiene permisos
{ "status": 403, "code": 1, "message": "Permission denied", "body": []}Error producido si no se agregó el archivo de la foto del curso
{ "status": 400, "code": 2, "message": "Missing required key in single structure: photo", "body": []}Error producido si el nombre corto ya existe
{ "status": 400, "code": 3, "message": "The course already exist", "body": []}Error producido si la categoría no existe
{ "status": 400, "code": 4, "message": "The Course category doesn´t exist", "body": []}Error producido si no se puede actualizar la foto del curso
{ "status": 403, "code": 5, "message": "permissions in localfile", "body": []}2. Actualizar la información de un curso.
- local_contentdata_update_course_info
Descripción:
Servicio para actualizar la información de un curso.
Endpoint: local_contentdata_update_course_info
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_update_course_info
- usertoken: string | token del usuario
- id: int | id del curso
- fullname: string | nombre completo del curso
- shortname: string | nombre corto del curso
- course_duration_days: int | duración del curso en días
- course_duration_hours: int | duración del curso en horas
- modules_duration_days: int | duración de los módulos en días
- complete_course: int | bandera que indica si el curso está completo o no (1 o 0)
- photo: file | archivo de la foto de portada para el curso
Respuestas:
Se actaulizó el curso
{ "status": 200, "code": 0, "message": "", "body": [ 'isnewphoto': bandera para identificar si es nueva foto 'photourl': URL de la foto del curso ]}Error producido si el usuario no tiene permisos
{ "status": 403, "code": 1, "message": "Permission denied", "body": []}Error producido si no se encuentró el curso
{ "status": 404, "code": 2, "message": "Course not found", "body": []}Error producido si no se puede actualizar la foto del curso
{ "status": 500, "code": 3, "message": "permissions in localfile", "body": []}3. Buscar cursos.
- local_contentdata_search_course
Descripción:
Servicio para buscar cursos.
Endpoint: local_contentdata_search_course
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_search_course
- usertoken: string | token de usuario
- text: string | nombre o nombre corto del curso
- pagination: int | número de páginas de la lista de cursos (valor por defecto = 0)
Respuestas:
Se encontró el curso
{ "status": 200, "code": 0, "message": "", "body": [ 'id': id del curso, 'category': categoria del curso, 'fullname': nombre completo del curso, 'shortname': nombre corto del curso, 'daysduration': duración del curso, 'sections': [ 'id': id de la sección, 'name': nombre de la sección ], ],}Error producido si el usuario no tiene permisos
{ "status": 403, "code": 1, "message": "Permission denied"}4. local_contentdata_get_course_info
Descripción:
Servicio para obtener la información de un curso.
Endpoint: local_contentdata_get_course_info
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_get_course_info
- id: int | id del curso
Respuestas:
Se encontró el curso
{ "status": 200, "code": 0, "message": "", "body": [ 'id': id del curso, 'fullname': nombre completo del curso, 'shortname': nombre corto del curso, 'category_name': nombre de la categoría, 'course_duration_days': duración del curso en días, 'course_duration_hours': duración del curso en horas, 'modules_duration_days': duración de los módulos en días, 'photo': url de la foto del curso, 'complete_course': bandera que indica si el curso está completo o no ]}Error producido si no se encontro el curso
{ "status": 403, "code": 1, "message": "Course not found"}5. Obtener información sobre el contenido del curso.
- local_contentdata_get_course_syllabus
Descripción:
Servicio para obtener información sobre el contenido del curso.
Endpoint: local_contentdata_get_course_syllabus
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_get_course_syllabus
- courseid: int | id del curso
- fullname: string | nombre completo del curso
- shortname: string | nombre corto del curso
Respuestas:
Se encontró la información del curso
{ "status": 200, "code": 0, "message": "", "body": [ 'course': nombre del curso, 'sections': [ 'section': número de sección, 'name': nombre de la sección, 'ebooks': número total de ebooks en la sección, 'videos': número total de videos en la sección, 'files': número total de archivos en la sección, 'websites': número total de websites en la sección, 'contents': [ 'name': nombre del contenido ] ] ]}Error producido si no se encontró el curso o el id pertenece a una promoción
{ "status": 404, "code": 1, "message": "Course not found", "body": []}6. asignar un usuario a un curso.
- local_contentdata_assign_course_access
Descripción:
Servicio para asignar un usuario a un curso.
Es sólo para dar acceso a los usuarios, no participán como estudiantes
Endpoint: local_contentdata_assign_course_access
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_assign_course_access
- usertoken: string | token del usuario
- courseid: int | id de curso
- userid: int | id de usuario que se busca agregar al curso
Respuestas:
Se agregó el usuario al curso
{ "status": 200, "code": 0, "message": ""}Error producido si el usuario no tiene permisos
{ "status": 403, "code": 1, "message": "Permission denied"}Error producido si no se encontró el curso
{ "status": 404, "code": 2, "message": "Course not found"}7. Eliminar un usuario de un curso.
- local_contentdata_remove_course_access
Descripción:
Servicio para eliminar un usuario de un curso.
Es sólo para quitar el acceso a los usuarios, no participán como estudiantes
Endpoint: local_contentdata_remove_course_access
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_remove_course_access
- usertoken: string | token del usuario
- courseid: int | id de curso
- userid: int | id de usuario que se busca eliminar del curso
Respuestas:
Se elimino el acceso al usuario del curso
{ "status": 200, "code": 0, "message": ""}Error producido si el usuario no tiene permisos
{ "status": 403, "code": 1, "message": "Permission denied"}Error producido si el usuario no está registrado en el curso
{ "status": 404, "code": 2, "message": "course not registered for this user"}8. Obtener el ID de un curso asociado a un grupo
- local_contentdata_get_course_by_group
Descripción:
Servicio para obtener el ID de un curso asociado a un grupo específico, ya sea buscando a través de campos personalizados (id_curso_padre) o directamente por la relación nativa del grupo.
Endpoint: local_contentdata_get_course_by_group
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_contentdata_get_course_by_group
- groupid: int | id del grupo a consultar
- coursetype: int | tipo de curso (1 para buscar por campo personalizado ‘id_curso_padre’, otro valor para relación directa con el grupo)
Respuestas:
Se encontró el curso asociado
{ "status": 200, "code": 0, "message": "", "body": { "courseid": 45 }}Error producido si no se encuentra un curso asociado al parámetro dado
{ "status": 403, "code": 1, "message": "Course not found"}Error producido si el ID del curso obtenido es 0 o el grupo no existe
{ "status": 404, "code": 2, "message": "Group not found"}9. Actualizar fechas de acceso a actividades.
- local_contentdata_update_activity_date
Descripción:
Servicio para actualizar las fechas de acceso a actividades.
Endpoint: local_contentdata_update_activity_date
Método: GET
Argumentos:
- wstoken: string | token de Manager
- moodlewsrestformat: json | formato de la respuesta
- wsfunction: string | local_update_activity_date
- usertoken: string | token del usuario que realiza la petición
- cmid: int | id de la actividad
- dateid: int | id de la fecha
- starttime: string | fecha de apertura
- endtime: string | fecha de cierre
- deadline: string | fecha límite (opcional)
Respuestas:
Se actualizó la fecha correctamente
{ "status": 200, "code": 0, "message": ""}Error producido si no se encontró el registro de la fecha de la actividad
{ "status": 403, "code": 1, "message": "DAte not found"}