...
- No existe el usuario --> Error 404 (Not Found)
- No se le pasó el parámetro obligatorio /id/externalid/username --> Error 400
- No se le pasó el parámetro obligatorio (json con todos los roles) --> Error 400
- Roles incompatibles (soporte sin rol admin || admin y training admin simultáneos) --> Error 400 => Código de error USR004
- No todos los portales y/o el identificador de usuario especificados como parámetro --> Error 400 (Bad Request)
- Error inesperado --> Error 500 (Internal Server Error)
- Todo OK --> 200 (OK).
Obtener todos los cursos de un usuario
Método: GET
URL:
- Obtener todos los cursos sin paginación:
- /admin/rest/administration/api/users/id/{id}/courses
- /admin/rest/administration/api/users/externalid/{external_id}/courses
- /admin/rest/administration/api/users/username/{username}/courses
- Obtener todos los cursos con paginación:
- /admin/rest/administration/api/users/id/{id}/courses?startIndex={startIndex}&count={count}
- /admin/rest/administration/api/users/externalid/{external_id}/courses?startIndex={startIndex}&count={count}
- /admin/rest/administration/api/users/username/{username}/courses?startIndex={startIndex}&count={count}
Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/users/id/1/courses?startIndex=0&count=100
Parámetros
- startindex = índice inicial para la paginación (Integer, opcional)
- count = total de elementos a recuperar para la paginación (Integer, opcional)
- status = Filtrar por el estado del curso (Valores válidos: DRAFT, PUBLISHED, CLOSED) opcional.
- startDateFrom = Filtrar los cursos que empiecen después de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- startDateTo = Filtrar los cursos que empiecen antes de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- endDateFrom = Filtrar los cursos que terminen después de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- endDateTo = Filtrar los cursos que terminen antes de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- creationDateFrom = Filtrar los cursos creados después de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- creationDateTo = Filtrar los cursos creados antes de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- modificationDateFrom = Filtrar los cursos modificados después de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
- modificationDateTo = Filtrar los cursos creados antes de la fecha proporcionada. (String, opcional). Si la cabecera NLC-datesFormat está con el valor milliseconds el valor será en milisegundos, en otro caso será en el formato: yyyy-MM-dd HH:mm:ss.
Cabeceras
- NLC-datesFormat. Opcional, valores permitidos:
milliseconds
. Las fechas se devolverán en milisegundos- en otro caso se seguirá el formato de texto: "yyyy-MM-dd HH:mm:ss"
Campos devueltos en el Json
Listado de cursos, cada curso consta de los siguientes campos:
- parent = Campos concretos del curso padre. En caso de que el curso esté configurado para tener convocatorias, son los campos que comparten todas las convocatorias. Contiene los siguientes atributos:
- parentId = Identificador del curso padre
- parentExternal_id = Id externo del curso padre
- name = Nombre del curso padre
- description = Descripción del curso
- comments = Comentarios del curso
- objectives = Objetivos del curso
- issueCertificate = Expedir certificado
- NO --> Sin certificado
- PASSED --> Certificado disponible para los estudiantes tan pronto aprueben el curso
- FINISHED --> Certificado disponible para los estudiantes solamente después de la finalización del curso
- sessionOrganization = Organización de acciones formativas
- MANUAL --> Manual
- AUTOMATIC --> Automática para actividades de auto-aprendizaje y manual para el resto
- evaluationType = Sistema de evaluación seleccionado
- Valores permitidos:
- PASSED_MANDATORY_ACTIVITIES
- MIN_SCORE
- Valores permitidos:
- credits = Número de créditos
- optativeCredits = Número de créditos optativos
- percentageToPass = porcentaje mínimo para superar el curso
- hasForum = Valor true/false. Indica si tiene foro.
- hasMessage = Valor true/fallse. Indica si tiene mensajes.
- clonedFromId = Identificador de curso que se clona
- hasReminder = Activar recordatorio a usuarios que llevan un tiempo sin acceder
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- hasStartReminder = Activar recordatorios de la fecha de inicio del curso
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- hasEditions = El curso tiene habilitadas las convocatorias
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- recogniseEditions = Validación automática entre convocatorias
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- id = Identificador
- external_id = Id externo
- editionName = Nombre de la convocatoria
- startDateMode = Tipo de fecha de inicio
- PUBLICATION_DATE --> La fecha de inicio será la fecha de publicación del curso
- MANUAL --> La fecha de inicio se establecerá de forma manual
- startDate = Fecha estimada de inicio (UTC)
- endDateMode = Tipo fecha de fin
- NONE --> Ninguna, el administrador finalizará el curso manualmente
- MANUAL --> La fecha de fin se establecerá de forma manual
- FIRST_ACCESS -> Fecha fin según el primer acceso del alumno
- studentAvailableDays = Número de días tras el primero acceso que tiene el alumno disponible el curso (Integer, obligatorio si el modo es FIRST_ACCESS).
- endDate = Fecha estimada de fin (UTC)
- status = Estado del curso
- moduleType = Tipo de módulo
- enrolmentPolicy = Política de inscripción
- AUTO_ENROLLMENT --> Auto inscripción
- ADMIN_ENROLLMENT --> Sólo los administradores pueden inscribir alumnos
- REQUEST_ENROLLMENT --> Solicitar inscripción
- requestEnrolmentEndDateMode = Tipo de fecha de fin en solicitud de inscripción
- INHERIT --> Heredada del curso
- MANUAL --> Se establecerá de forma manual
- requestEnrolmentStartDate = Fecha de apertura de inscripciones (UTC)
- requestEnrolmentEndDate = Fecha de cierre de inscripciones (UTC)
- clonedFromId = Identificador de curso que se clona (Long)
- capacity = Aforo máximo de la edición (Integer)
- avgRating = Valoración media (Double)
- rateable = Curso valorable por los alumnos o no valorable
- Valores permitidos:
- NONE : no valorable
- ONLY_ENROLMENTS : los alumnos inscritos pueden valorar el curso
- Valor por defecto: NONE
- Valores permitidos:
- categories = Lista de Categorías del curso
- id = Identificador de la categoría
- external_id = Identificador externo
- name = Nombre de la categoría
- code = Código de la categoría
- description = Descripción de la categoría
- id = Identificador de la categoría
- extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
- extendedFieldName = Nombre del campo extendido
- extendedFieldValue = Valor del campo extendido
- collection = Nombre de la colección asociada al curso. Vacio si no está asociado a ninguna colección.
Validaciones
- Índices erróneos --> Error 416 (Requested Range Not Satisfiable) Usando paginación, ambos índices deben tener un valor
- No hay cursos --> Error 204 (No Content)
- Filtro por estado incorrecto –> Error 400 (Bad request).
- Filtro de fechas con formato incorrecto --> Error 400 (Bad request).
- Error en la generación del Json --> Error 503 (Service Unavailable)
- Filtro por usuario incorrecto --> Error 400 (Bad request)
Todo OK
- Si no hay paginación --> 200 (OK) + JSON
- Si hay paginación --> 206 (Partial Content) + JSON
Obtener todos los cursos de catálogo de un usuario
Método: GET
URL:
- Obtener todos los cursos de catálogo:
- /admin/rest/administration/api/users/id/{id}/catalog
- /admin/rest/administration/api/users/externalid/{external_id}/catalog
- /admin/rest/administration/api/users/username/{username}/catalog
Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/users/id/1/catalog
Campos devueltos en el Json
Listado de cursos, cada curso consta de los siguientes campos:
- parent = Campos concretos del curso padre. En caso de que el curso esté configurado para tener convocatorias, son los campos que comparten todas las convocatorias. Contiene los siguientes atributos:
- parentId = Identificador del curso padre
- parentExternal_id = Id externo del curso padre
- name = Nombre del curso padre
- description = Descripción del curso
- comments = Comentarios del curso
- objectives = Objetivos del curso
- issueCertificate = Expedir certificado
- NO --> Sin certificado
- PASSED --> Certificado disponible para los estudiantes tan pronto aprueben el curso
- FINISHED --> Certificado disponible para los estudiantes solamente después de la finalización del curso
- sessionOrganization = Organización de acciones formativas
- MANUAL --> Manual
- AUTOMATIC --> Automática para actividades de auto-aprendizaje y manual para el resto
- evaluationType = Sistema de evaluación seleccionado
- Valores permitidos:
- PASSED_MANDATORY_ACTIVITIES
- MIN_SCORE
- Valores permitidos:
- credits = Número de créditos
- optativeCredits = Número de créditos optativos
- percentageToPass = porcentaje mínimo para superar el curso
- hasForum = Valor true/false. Indica si tiene foro.
- hasMessage = Valor true/fallse. Indica si tiene mensajes.
- clonedFromId = Identificador de curso que se clona
- hasReminder = Activar recordatorio a usuarios que llevan un tiempo sin acceder
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- hasStartReminder = Activar recordatorios de la fecha de inicio del curso
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- hasEditions = El curso tiene habilitadas las convocatorias
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- recogniseEditions = Validación automática entre convocatorias
- Valores permitidos: TRUE / FALSE
- Valor por defecto: FALSE
- id = Identificador
- external_id = Id externo
- editionName = Nombre de la convocatoria
- startDateMode = Tipo de fecha de inicio
- PUBLICATION_DATE --> La fecha de inicio será la fecha de publicación del curso
- MANUAL --> La fecha de inicio se establecerá de forma manual
- startDate = Fecha estimada de inicio (UTC)
- endDateMode = Tipo fecha de fin
- NONE --> Ninguna, el administrador finalizará el curso manualmente
- MANUAL --> La fecha de fin se establecerá de forma manual
- FIRST_ACCESS -> Fecha fin según el primer acceso del alumno
- studentAvailableDays = Número de días tras el primero acceso que tiene el alumno disponible el curso (Integer, obligatorio si el modo es FIRST_ACCESS).
- endDate = Fecha estimada de fin (UTC)
- status = Estado del curso
- moduleType = Tipo de módulo
- enrolmentPolicy = Política de inscripción
- AUTO_ENROLLMENT --> Auto inscripción
- ADMIN_ENROLLMENT --> Sólo los administradores pueden inscribir alumnos
- REQUEST_ENROLLMENT --> Solicitar inscripción
- requestEnrolmentEndDateMode = Tipo de fecha de fin en solicitud de inscripción
- INHERIT --> Heredada del curso
- MANUAL --> Se establecerá de forma manual
- requestEnrolmentStartDate = Fecha de apertura de inscripciones (UTC)
- requestEnrolmentEndDate = Fecha de cierre de inscripciones (UTC)
- clonedFromId = Identificador de curso que se clona (Long)
- capacity = Aforo máximo de la edición (Integer)
- avgRating = Valoración media (Double)
- rateable = Curso valorable por los alumnos o no valorable
- Valores permitidos:
- NONE : no valorable
- ONLY_ENROLMENTS : los alumnos inscritos pueden valorar el curso
- Valor por defecto: NONE
- Valores permitidos:
- categories = Lista de Categorías del curso
- id = Identificador de la categoría
- external_id = Identificador externo
- name = Nombre de la categoría
- code = Código de la categoría
- description = Descripción de la categoría
- id = Identificador de la categoría
- extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
- extendedFieldName = Nombre del campo extendido
- extendedFieldValue = Valor del campo extendido
- collection = Nombre de la colección asociada al curso. Vacio si no está asociado a ninguna colección.
Validaciones
- No hay cursos --> Error 204 (No Content)
- Error en la generación del Json --> Error 503 (Service Unavailable)
- Filtro por usuario incorrecto --> Error 400 (Bad request)
Todo OK
- 200 (OK) + JSON