Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Si no hay paginación --> 200 (OK) + JSON
  • Si hay paginación --> 206 (Partial Content) + JSON

Obtener

...

todos los cursos (v7)

Método: GET

URL:

  • Obtener

...

  • todos los cursos sin paginación: 
    • /admin/rest/administration/api/courses
    /id/{id}

...

  • Obtener todos los cursos con paginación:
    • /admin/rest/administration/api/courses?startIndex={startIndex}&count={count}
  • Obtener todas las convocatorias de un curso:
    • /admin/rest/administration/api/courses
    /externalid/{externalid}

...

    • ?parentId={parentId}
    • /admin/rest/administration/api/courses?parenExternaltId={parentExternalId}

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

Cabeceras

...

?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)
  • planId = Filtrar por cursos dentro del plan (Long, 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"

Campos devueltos en el Json

Curso, cada curso consta de los siguientes campos:

...

  • 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

...

  • PUBLICATION_DATE --> La fecha de inicio será la fecha de publicación del curso
  • MANUAL --> La fecha de inicio se establecerá de forma manual

...

  • 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

...

  • Valores permitidos:
      • PASSED_MANDATORY_ACTIVITIES
      • MIN_SCORE

...

  • AUTO_ENROLLMENT --> Auto inscripción
  • ADMIN_ENROLLMENT --> Sólo los administradores pueden inscribir alumnos
  • REQUEST_ENROLLMENT --> Solicitar inscripción

...

  • INHERIT --> Heredada del curso
  • MANUAL --> Se establecerá de forma manual

...

  • 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

...

  • extendedFieldName = Nombre del campo extendido
  • extendedFieldValue = Valor del campo extendido

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (v3)

Método: GET

URL:

Obtener por id:

  • /admin/rest/administration/api/courses/id/{id}

Obtener por external id:

  • /admin/rest/administration/api/courses/externalid/{externalid}
Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

...

  • .
  • 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.
  • parentId = Filtrar por todos los cursos cuyo parentId es el proporcionado (Long, opcional)
  • parentExternalId = Filtrar por todos los cursos cuyo curso padre tiene el external id proporcionado (String, opcional)

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
    • 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 
  • 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
  • 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.
  • hasLink = Valor true/false. Indica si tiene enlaces externos
  • externalLinks= Lista de enlaces externos. Devuelve null si el curso no los tiene.
    • name = Nombre del enlace
    • urlLink = El propio enlace
  • estimatedDuration = Duración estimada del curso (sumatorio de las duraciones de todas las actividades)

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)

Todo OK

  • Si no hay paginación --> 200 (OK) + JSON
  • Si hay paginación --> 206 (Partial Content) + JSON

Obtener curso (v1,v2)

Método: GET

URL:

Obtener por id:

  • /admin/rest/administration/api/courses/id/{id}

Obtener por external id:

  • /admin/rest/administration/api/courses/externalid/{externalid}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

Curso, cada curso consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • name = Nombre del curso
  • description = Descripción del curso
  • comments = Comentarios del curso
  • objectives = Objetivos del curso
  • moduleType = Tipo de módulo
  • 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
  • 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)
  • 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
  • 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.  
  • status = Estado del curso
  • 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)
  • 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
  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
    • extendedFieldName = Nombre del campo extendido
    • extendedFieldValue = Valor del campo extendido

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (v3)

Método: GET

URL:

Obtener por id:

  • /admin/rest/administration/api/courses/id/{id}

Obtener por external id:

  • /admin/rest/administration/api/courses/externalid/{externalid}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

Curso, cada curso consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • name = Nombre del curso
  • description = Descripción del curso
  • comments = Comentarios del curso
  • objectives = Objetivos del curso
  • moduleType = Tipo de módulo
  • 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
  • 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)
  • 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
  • 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.  
  • status = Estado del curso
  • 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)
  • 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
     
  • 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
  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
    • extendedFieldName = Nombre del campo extendido
    • extendedFieldValue = Valor del campo extendido

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (v4)

Método: GET

URL:

Obtener por id:

  • /admin/rest/administration/api/courses/id/{id}

Obtener por external id:

  • /admin/rest/administration/api/courses/externalid/{externalid}


Tanto el id como el externalid nunca se referirán a los identificadores del curso padre.

Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

Curso, 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
    • 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
  • name editionName =   Nombre del curso
  • description = Descripción del curso
  • comments = Comentarios del curso
  • objectives = Objetivos del curso
  • moduleType = Tipo de módulo
  • 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
  • startDateMode de la edición
  • 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 inicio (UTC)
  • endDateMode = Tipo fecha de finfin 
    • 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)
  • 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
  • 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.  
  • status = Estado del cursotiene 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 inscripciones (UTC)
  • requestEnrolmentEndDate = Fecha de cierre de inscripciones (UTCinscripciones (UTC)
  • clonedFromId = Identificador de curso que se clona (Long) 
  • capacity = Aforo máximo de la edición (Integer)
  • avgRating = Valoración media (Double)
  • rateable 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
     
    • NONE 
  • categories = Lista de Categorías del curso 
    • id id = Identificador de la categoría
    • external_id id = Identificador externo
    • name name = Nombre de la categoría
    • code code = Código de la categoría
    • description description = Descripción de la categoría
  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
    • extendedFieldName extendedFieldName = Nombre del campo extendido
    • extendedFieldValue = Valor del campo extendido

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (

...

v5)

Método: GET

URL:

Obtener por id:

...

Tanto el id como el externalid nunca se referirán a los identificadores del curso padre.


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

Curso, 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
    • 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 edición
  • 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 
  • 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
  • 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 existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (

...

v6)

Método: GET

URL:

Obtener por id:

...

Tanto el id como el externalid nunca se referirán a los identificadores del curso padre.


Note

Recuerda que por motivos de seguridad,

...

el external_id

...

 no puede contener los

...

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

Curso, 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
    • 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 edición
  • 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 
  • 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
  • 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.
  • hasLink = Valor true/false. Indica si tiene enlaces externos
  • externalLinks= Lista de enlaces externos. Devuelve null si el curso no los tiene.
    • name = Nombre del enlace
    • urlLink = El propio enlace

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener curso (

...

v7)

Método: GET

URL:

Obtener por id:

...

Tanto el id como el externalid nunca se referirán a los identificadores del curso padre.note


Image Added

Recuerda que por motivos de seguridad,

...

el external_id

...

 no puede contener los

...

caracteres \ ni /


Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

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

Curso, 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
    • 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 edición
  • 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 
  • 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
  • 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.
  • hasLink = Valor true/false. Indica si tiene enlaces externos
  • externalLinks= Lista de enlaces externos. Devuelve null si el curso no los tiene.
    • name = Nombre del enlace
    • urlLink = El propio enlace
  • estimatedDuration = Duración estimada del curso (sumatorio de las duraciones de todas las actividades)

Validaciones

  • No existe el curso Error 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

...

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2514

Validaciones

  • Error inesperado al eliminar el curso --> Error CRS036 / 400 (Bad Request)
  • No existe un curso con ese id o id externo --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

...

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action = acción que se quiere realizar (añadir usando ids de grupos o ids externos) (String, obligatorio)
    • Valores permitidos 
      • addByIds
      • addByExternalids
  • id (lista) = cada uno de los identificadores o identificadores externos (String, obligatorio)

...

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los grupos han sido añadidos--> 200 (OK)
  • Ejecución OK y algún grupo no ha podido ser añadido --> 200 (OK) + JSON

...

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/345/groups

Campos devueltos en el Json

Listado de grupos, cada grupo consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • parentId = Identificador de grupo padre
  • name = Nombre de grupo
  • description = Descripción de grupo
  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValuee 
    • extendedFieldName = Nombre del campo extendido
    • extendedFieldValue = Valor del campo extendido


Validaciones

  • Si el curso no existe --> Error 404 (Not Found)
  • No hay grupos --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

...

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action = acción que se quiere realizar (eliminar usando ids de grupos o ids externos) (String, obligatorio)
    • Valores permitidos 
      • removeByIds
      • removeByExternalids
  • id (lista) = cada uno de los identificadores o identificadores externos (String, obligatorio)

...

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los grupos han sido eliminados -> 200 (OK)
  • Ejecución OK y algún grupo no ha podido ser eliminado --> 200 (OK) + JSON

...

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action = acción que se quiere realizar (añadir usando ids de usuario o ids externos) (String, obligatorio)
    • Valores permitidos
      • addByIds
      • addByExternalids
  • id (lista) = cada uno de los identificadores o identificadores externos (String, obligatorio)

...

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los usuarios han sido añadidos --> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

...

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/345/tutors

Campos devueltos en el Json

Listado de usuarios tutores, cada tutor consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • username = Nombre de usuario
  • firstName = Nombre
  • lastName = Apellidos
  • preferredLanguage = Idioma predeterminado
  • personTimezoneId = Zona horaria
  • roles = Roles del usuario
  • email = Correo electrónico del usuario
  • officePhoneNumber = Teléfono de oficina
  • mobilePhoneNumber = Teléfono móvil
  • address = Dirección
  • jobTitle = Puesto
  • location = Departamento
  • organization = Compañía
  • aboutMe = Sobre mí
  • interests = Intereses
  • status = Estado
  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
    • extendedFieldName = Nombre del campo extendido
    • extendedFieldValue = Valor del campo extendido

Validaciones

  • Si el curso no existe --> Error 404 (Not Found)
  • No hay usuarios --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

...

Eliminar tutores de un curso

Método: DELETE

URL:

  • Eliminar por id:
    • /admin/rest/administration/api/courses/id/{id}/tutors?action={action}
  • Eliminar por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/tutors?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/tutors?action=removeByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (eliminar usando ids de usuarios o ids externos) (String,obligatorio)
    • Valores permitidos
      • removeByIds
      • removeByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún grupo haya dado error)

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los tutores han sido eliminados -> 200 (OK)
  • Ejecución OK y algún tutor no ha podido ser eliminado --> 200 (OK) + JSON

Añadir estudiantes a un curso

Método: POST

URL:

  • Añadir por id:
    • /admin/rest/administration/api/courses/id/{id}/students?action={action}
  • Añadir por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/students?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/students?action=addByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (añadir usando ids de usuario o ids externos) (String,obligatorio)
    • Valores permitidos
      • addByIds
      • addByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún usuario haya dado error)

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No se puede añadir estudiantes al curso --> Error CRS025 / 400 (Bad Request)
  • Se ha superado el aforo máximo permitido en la convocatoria --> Error CRS043 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los usuarios han sido añadidos--> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

Añadir estudiantes a un curso (v2)

Método: POST

URL:

  • Añadir por id:
    • /admin/rest/administration/api/courses/id/{id}/students?action={action}
  • Añadir por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/students?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/students?action=addByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (añadir usando ids de usuario o ids externos) (String,obligatorio)
    • Valores permitidos
      • addByIds
      • addByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún usuario haya dado error)

  • status: KO
  • ids / external ids: mapa de ids o external ids que han dado error con su código correspondiente:
    • CRS053: Alumno no encontrado.
    • CRS054: Alumno con estado inválido(debe estar activo).
    • CRS055: Alumno eliminado.
    • CRS056: Alumno ya inscrito.
  • Ejemplo de json devuelto: {"ids":{"1":"CRS056","2":"CRS056","3":"CRS053","8060":"CRS054"},"status":"KO"}

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No se puede añadir estudiantes al curso --> Error CRS025 / 400 (Bad Request)
  • Se ha superado el aforo máximo permitido en la convocatoria --> Error CRS043 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los usuarios han sido añadidos--> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

Aceptar solicitudes de inscripción a un curso

Método: POST

URL:

  • Aceptar por id:
    • /admin/rest/administration/api/courses/id/{id}/requests?action={action}
  • Aceptar por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/requests?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/requests?action=acceptByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (aceptar usando ids de usuario o ids externos) (String,obligatorio)
    • Valores permitidos
      • acceptByIds
      • acceptByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún usuario haya dado error)

  • status: KO
  • ids / external ids: mapa de ids o external ids que han dado error con su código correspondiente:
    • CRS053: Alumno no encontrado.
    • CRS054: Alumno con estado inválido(debe estar activo).
    • CRS055: Alumno eliminado.
    • CRS056: Alumno ya inscrito.
    • CRS057: Solicitud de inscripción no encontrada.
  • Ejemplo de json devuelto: {"ids":{"1":"CRS056","2":"CRS056","3":"CRS053","8060":"CRS054"},"status":"KO"}

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "acceptByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No se puede añadir estudiantes al curso --> Error CRS025 / 400 (Bad Request)
  • Se ha superado el aforo máximo permitido en la convocatoria --> Error CRS043 / 400 (Bad Request)
  • No existe el curso --> Error 404 (Not Found)
  • Ejecución OK y todos los usuarios han sido añadidos--> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

Rechazar solicitudes de inscripción a un curso

Método: POST

URL:

  • Rechazar por id:
    • /admin/rest/administration/api/courses/id/{id}/requests?action={action}
  • Rechazar por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/requests?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/requests?action=rejectByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (rechazar usando ids de usuario o ids externos) (String,obligatorio)
    • Valores permitidos
      • rejectByIds
      • rejectByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún usuario haya dado error)

  • status: KO
  • ids / external ids: mapa de ids o external ids que han dado error con su código correspondiente:
    • CRS053: Alumno no encontrado.
    • CRS054: Alumno con estado inválido(debe estar activo).
    • CRS055: Alumno eliminado.
    • CRS056: Alumno ya inscrito.
    • CRS057: Solicitud de inscripción no encontrada.
  • Ejemplo de json devuelto: {"ids":{"1":"CRS056","2":"CRS056","3":"CRS053","8060":"CRS054"},"status":"KO"}

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "rejectByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 404 (Not Found)
  • Ejecución OK y todos los usuarios han sido añadidos--> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

Obtener estudiantes de un curso con paginado

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/students
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/students
  • Obtener estudiantes con paginación:
    • /admin/rest/administration/api/courses/id/{id}/students?startIndex={startIndex}&count={count}
    • /admin/rest/administration/api/courses/externalid/{external_id}/students?startIndex={startIndex}&count={count}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:https://demo.central-lms.com/admin/rest/administration/api/courses/id/345/students?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)

Campos devueltos en el Json

Listado de usuarios estudiantes, cada usuario consta de los siguientes campos:

  • id= Identificador
  • external_id= Id externo
  • username= Nombre de usuario

Validaciones

  • Índices erróneos --> Error 416 (Requested Range Not Satisfiable) Usando paginación, ambos índices deben tener un valor
  • Si el curso no existe --> Error 404 (Not Found)
  • No hay usuarios --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK
    • Si no hay paginación --> 200 (OK) + JSON
    • Si hay paginación --> 206 (Partial Content) + JSON


Obtener histórico de inscripciones

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/enrolmenthistory
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/enrolmenthistory


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:https://demo.central-lms.com/admin/rest/administration/api/courses/id/345/enrolmenthistory

Code Block
titleBODY - application/x-www-form-urlencoded
date=12456897000

Parámetros

  • date= Fecha en milisegundos a partir de la cual se busca en el histórico (String, opcional)

Campos devueltos en el Json

Listado de inscripciones, cada inscripción consta de los siguientes campos:

  • id= Identificador del histórico
  • learningContainerId= Identificador del curso
  • learningContainerExternalId= Identificador externo del curso
  • learningContainerName= Nombre del curso
  • operationType= Tipo de operación
  • studentId= Identificador del estudiante
  • studentExternalId= Identificador externo del estudiante
  • studentUsername= Nombre de usuario del estudiante
  • creationInMillis= Fecha y hora en milisegundos en la que se realizó la operación

Validaciones

  • No hay inscripciones --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener evaluación de estudiante (v1)

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/evaluations
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations
  • Obtener estudiantes con paginación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?startIndex={startIndex}&count{count}
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations?startIndex={startIndex}&count{count}
  • Obtener estudiantes por fecha de última actuación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?date={timeInMillis}
    • /admin/rest/administration/api/courses/externalid/{exetrnal_id}/evaluations?date={timeInMillis}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:

Parámetros

  • date= Fecha en milisegundos a partir de la cual se busca la última fecha de actualización de la evaluación de cada alumno (String, opcional)
  • startindex= índice inicial para la paginación (Integer, opcional)
  • count= total de elementos a recuperar para la paginación (Integer, opcional)
  • status= Estado de la evaluación. Valores posibles: IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED (String opcional)
  • studentId= Id del alumno (Integer opcional)
  • studentExternalId= External id del alumno (String opcional)
  • studentUsername= Nombre de usuario del alumno (String opcional)

Campos devueltos en el Json

Listado de evaluaciones de los alumnos del curso, cada evaluación consta de los siguientes campos:

  • student_id= Identificador del alumno.
  • external_id= Identificador externo del alumno.
  • username= nombre de usuario.
  • progress= porcentaje del progreso del alumno en el curso.
  • score= nota del alumno en el curso.
  • totaltime= tiempo dedicado al curso por el alumno en horas, minutos y segundos.
  • firstAccess= fecha del primer acceso del alumno al curso.
  • lastAccess= fecha del último acceso del alumno al curso.
  • status =Estado del alumno en el curso (IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED).

Validaciones

  • No hay evaluaciones --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener evaluación de estudiante (v2)

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/evaluations
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations
  • Obtener estudiantes con paginación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?startIndex={startIndex}&count{count}
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations?startIndex={startIndex}&count{count}
  • Obtener estudiantes por fecha de última actuación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?date={timeInMillis}
    • /admin/rest/administration/api/courses/externalid/{exetrnal_id}/evaluations?date={timeInMillis}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:

Parámetros

  • date= Fecha en milisegundos a partir de la cual se busca la última fecha de actualización de la evaluación de cada alumno (String, opcional)
  • startindex= índice inicial para la paginación (Integer, opcional)
  • count= total de elementos a recuperar para la paginación (Integer, opcional)
  • status= Estado de la evaluación. Valores posibles: IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED (String opcional)
  • studentId= Id del alumno (Integer opcional)
  • studentExternalId= External id del alumno (String opcional)
  • studentUsername= Nombre de usuario del alumno (String opcional)

Campos devueltos en el Json

Listado de evaluaciones de los alumnos del curso, cada evaluación consta de los siguientes campos:

  • evaluation_id= Identificador de la evaluación.
  • student_id= Identificador del alumno.
  • external_id= Identificador externo del alumno.
  • username= nombre de usuario.
  • score= nota del alumno en el curso.
  • totaltime= tiempo dedicado al curso por el alumno en horas, minutos y segundos.
  • firstAccess= fecha del primer acceso del alumno al curso.
  • lastAccess= fecha del último acceso del alumno al curso.
  • status =Estado del alumno en el curso (IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED).
  • passedItems:Número de actividades aprobadas.

  • passedMandatoryItems:Número de actividades obligatorias aprobadas.

  • totalItems:Número total de actividades.
  • totalMandatoryItems:Número de actividades obligatorias.
  • enrolmentMotive= Motivo de inscripción
  • limitAccessDate= Fecha límite de acceso

Validaciones

  • No hay evaluaciones --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Obtener evaluación de estudiante (v3)

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/evaluations
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations
  • Obtener estudiantes con paginación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?startIndex={startIndex}&count{count}
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations?startIndex={startIndex}&count{count}
  • Obtener estudiantes por fecha de última actuación:
    • /admin/rest/administration/api/courses/id/{id}/evaluations?date={timeInMillis}
    • /admin/rest/administration/api/courses/externalid/{exetrnal_id}/evaluations?date={timeInMillis}


Note

Recuerda que por motivos de seguridad, elexternal_idno puede contener los caracteres\ni/


Ejemplo:

Parámetros

  • date = Fecha en milisegundos a partir de la cual se busca la última fecha de actualización de la evaluación de cada alumno (String, opcional)
  • startindex = índice inicial para la paginación (Integer, opcional)
  • count = total de elementos a recuperar para la paginación (Integer, opcional)
  • status = Estado de la evaluación. Valores posibles: IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED (String opcional)
  • studentId = Id del alumno (Integer opcional)
  • studentExternalId = External id del alumno (String opcional)
  • studentUsername = Nombre de usuario del alumno (String opcional)

Campos devueltos en el Json

Listado de evaluaciones de los alumnos del curso, cada evaluación consta de los siguientes campos:

  • evaluation_id = Identificador de la evaluación.
  • student_id = Identificador del alumno.
  • external_id = Identificador externo del alumno.
  • username = nombre de usuario.
  • score = nota del alumno en el curso.
  • totaltime = tiempo dedicado al curso por el alumno en horas, minutos y segundos.
  • firstAccess = fecha del primer acceso del alumno al curso.
  • lastAccess = fecha del último acceso del alumno al curso.
  • status = Estado del alumno en el curso (IN_PROGRESS, PASSED, NOT_PASSED, NOT_STARTED, VALIDATED).
  • passedDate = Fecha de superación del curso.
  • passedItems: Número de actividades aprobadas.

  • passedMandatoryItems: Número de actividades obligatorias aprobadas.

  • totalItems: Número total de actividades.
  • totalMandatoryItems: Número de actividades obligatorias.
  • enrolmentMotive = Motivo de inscripción
  • limitAccessDate = Fecha límite de acceso

Validaciones

  • No hay evaluaciones --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Modificar evaluación de curso (v2)


Note

Se consumirá sólo un tipo de recurso:

  • Content-Type: application/json

Método: PUT

URL:

  • Modificar por id:
    • /admin/rest/administration/api/courses/id/{id}/evaluations/{evaluation_id}
  • Modificar por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations/{evaluation_id}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2030/evaluations/4543

Code Block
languagejavascript
titleBODY - application/json
{
"evaluation_id":4543,
"student_id":2221,
"external_id":"ff80818166be7eac0166cbc684d802ce",
"username":"login279",
"score":15,
"totaltime":"00:20:00",
"firstAccess":"2019-12-19 23:59:59",
"lastAccess":"2019-12-19 23:59:59",
"status":"IN_PROGRESS",
"passedItems":1,
"passedMandatoryItems":0,
"totalItems":1,
"totalMandatoryItems":1,
"enrolmentMotive":"aaaaaa",
"limitAccessDate":"2019-12-19 23:59:59"
}

Parámetros

Se le pueden pasar todos estos parámetros, aunque los indicados no se podrán modificar (simplemente se ignorarán). Por comodidad se mantienen, ya que son todos los campos que devuelve la petición GET.

  • evaluation_id =Id de la evaluación (NO EDITABLE)

  • student_id= Id del alumno (NO EDITABLE)

  • external_id= Id externo del alumno (NO EDITABLE)

  • username= Nombre de usuario (NO EDITABLE)

  • score= Puntuación (Número, opcional) Valores permitidos: Número entre 0 y 100

  • totaltime= tiempo total (String, opcional) Formato permitido HH:mm:ss

  • firstAccess= Fecha de primer acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

  • lastAccess= Fecha de último acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss
  • status= Estado de la evaluación (String, opcional)
    • IN_PROGRESS
    • PASSED
    • NOT_PASSED
    • NOT_STARTED
    • VALIDATED
  • passedItems= Número de actividades superadas (Integer,opcional)
  • passedMandatoryItems= Número de actividades obligatorias superadas (Integer, opcional)

  • totalItems= Número de actividades (NO EDITABLE)
  • totalMandatoryItems= Número de actividades obligatorias (NO EDITABLE)
  • enrolmentMotive= Motivo de inscripción (String, opcional)
  • limitAccessDate= Fecha límite de acceso del alumno (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

Validaciones

  • El formato de las fechas es incorrecto --> Error ERR008 / 400 (Bad Request)
  • El formato de la hora es incorrecto --> Error ERR009 / 400 (Bad Request)
  • El estado del alumno es incorrecto --> Error CEV001 / 400 (Bad Request)
  • La puntuación es incorrecta --> Error CEV002 / 400 (Bad Request)
  • La fecha límite de acceso no está permitida --> Error CEV003 / 400 (Bad Request)
  • No se permite modificar la evaluación porque el curso está finalizado --> Error CEV004 / 400 (Bad Request)
  • No existe una evaluación con ese id --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

Modificar evaluación de curso (v3)


Note

Se consumirá sólo un tipo de recurso:

  • Content-Type: application/json


Método: PUT

URL:

  • Modificar por id:
    • /admin/rest/administration/api/courses/id/{id}/evaluations/{evaluation_id}
  • Modificar por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/evaluations/{evaluation_id}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /


Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2030/evaluations/4543

BODY - application/json


Code Block
{
"evaluation_id":4543,
"student_id":2221,
"external_id":"ff80818166be7eac0166cbc684d802ce",
"username":"login279",
"score":15,
"totaltime":"00:20:00",
"firstAccess":"2019-12-19 23:59:59",
"lastAccess":"2019-12-19 23:59:59",
"status":"IN_PROGRESS",
"passedDate": "2019-12-19 23:59:59",
"passedItems":1,
"passedMandatoryItems":0,
"totalItems":1,
"totalMandatoryItems":1,
"enrolmentMotive":"aaaaaa",
"limitAccessDate":"2019-12-19 23:59:59"
}

Parámetros

Se le pueden pasar todos estos parámetros, aunque los indicados no se podrán modificar (simplemente se ignorarán). Por comodidad se mantienen, ya que son todos los campos que devuelve la petición GET.

  • evaluation_id = Id de la evaluación (NO EDITABLE)

  • student_id = Id del alumno (NO EDITABLE)

  • external_id = Id externo del alumno (NO EDITABLE)

  • username = Nombre de usuario (NO EDITABLE)

  • score = Puntuación (Número, opcional) Valores permitidos: Número entre 0 y 100

  • totaltime = tiempo total (String, opcional) Formato permitido HH:mm:ss

  • firstAccess = Fecha de primer acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

  • lastAccess = Fecha de último acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss
  • status = Estado de la evaluación (String, opcional)
    • IN_PROGRESS
    • PASSED
    • NOT_PASSED
    • NOT_STARTED
    • VALIDATED
  • passedDate = Fecha de superación del curso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss Si no se especifica y el nuevo estado es VALIDATED o PASSED, se establecerá el instante en que se actualiza
  • passedItems = Número de actividades superadas (Integer, opcional)
  • passedMandatoryItems = Número de actividades obligatorias superadas (Integer, opcional)

  • totalItems = Número de actividades (NO EDITABLE)
  • totalMandatoryItems = Número de actividades obligatorias (NO EDITABLE)
  • enrolmentMotive = Motivo de inscripción (String, opcional)
  • limitAccessDate = Fecha límite de acceso del alumno (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

Validaciones

  • El formato de las fechas es incorrecto --> Error ERR008 / 400 (Bad Request)
  • El formato de la hora es incorrecto --> Error ERR009 / 400 (Bad Request)
  • El estado del alumno es incorrecto --> Error CEV001 / 400 (Bad Request)
  • La puntuación es incorrecta --> Error CEV002 / 400 (Bad Request)
  • La fecha límite de acceso no está permitida --> Error CEV003 / 400 (Bad Request)
  • No se permite modificar la evaluación porque el curso está finalizado --> Error CEV004 / 400 (Bad Request)
  • No existe una evaluación con ese id --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

Aplicar diff de evaluaciones (v2)


Note

Se consumirán el tipo de recurso:

Content-Type: application/json

Método: PATCH

Se podría usar un POST incluyendo la cabecera "X-HTTP-Method-Override: PATCH"

URL:

Modificar por id:

  • /admin/rest/administration/api/courses/id/{id}/evaluations/{evaluation_id}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2030/evaluations/4543

Code Block
languagejavascript
titleBODY - application/json
[
{ "op": "add", "path": "/limitAccessDate", "value": "2019-12-19 23:59:59" }
]

Operaciones permitidas

Se permiten las operaciones delRFC-6902. En path se pondría el parámetro a operar.

[{"op":"test","path":"/a/b/c","value":"foo"},
{
"op":"remove","path":"/a/b/c"},
{
"op":"add","path":"/a/b/c","value":["foo","bar"]},
{"op":"replace","path":"/a/b/c","value":42},
{"op":"move","from":"/a/b/c","path":"/a/b/d"},
{
"op":"copy","from":"/a/b/d","path":"/a/b/e"}]

Parámetros modificables ("path" y "value" posibles)

  • score= Puntuación (Número, opcional) Valores permitidos: Número entre 0 y 100

  • totaltime= tiempo total (String, opcional) Formato permitido HH:mm:ss

  • firstAccess= Fecha de primer acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

  • lastAccess= Fecha de último acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss
  • status= Estado de la evaluación (String, opcional)
    • IN_PROGRESS
    • PASSED
    • NOT_PASSED
    • NOT_STARTED
    • VALIDATED
  • passedItems= Número de actividades superadas (Integer,opcional)
  • passedMandatoryItems= Número de actividades obligatorias superadas (Integer, opcional)

  • enrolmentMotive= Motivo de inscripción (String, opcional)
  • limitAccessDate= Fecha límite de acceso del alumno (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss


Validaciones

  • El formato de las fechas es incorrecto --> Error ERR008 / 400 (Bad Request)
  • El formato de la hora es incorrecto --> Error ERR009 / 400 (Bad Request)
  • El estado del alumno es incorrecto --> Error CEV001 / 400 (Bad Request)
  • La puntuación es incorrecta --> Error CEV002 / 400 (Bad Request)
  • La fecha límite de acceso no está permitida --> Error CEV003 / 400 (Bad Request)
  • No se permite modificar la evaluación porque el curso está finalizado --> Error CEV004 / 400 (Bad Request)
  • No existe una evaluación con ese id --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

Aplicar diff de evaluaciones (v3)


Note

Se consumirán el tipo de recurso:

Content-Type: application/json


Método: PATCH

Se podría usar un POST incluyendo la cabecera "X-HTTP-Method-Override: PATCH"

URL:

Modificar por id:

  • /admin/rest/administration/api/courses/id/{id}/evaluations/{evaluation_id}
Note

Recuerda que por motivos de seguridad, elexternal_idno puede contener los caracteres\ni/

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/2030/ evaluations/4543

BODY - application/json


Code Block
[
{ "op": "add", "path": "/limitAccessDate", "value": "2019-12-19 23:59:59" }
]


Operaciones permitidas

Se permiten las operaciones del RFC-6902. En path se pondría el parámetro a operar.

 [{ "op": "test", "path": "/a/b/c", "value": "foo" }, 
{
 "op": "remove", "path": "/a/b/c" }, 
{
 "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] },
{ "op": "replace", "path": "/a/b/c", "value": 42 },
{ "op": "move", "from": "/a/b/c", "path": "/a/b/d" }, 
{
 "op": "copy", "from": "/a/b/d", "path": "/a/b/e" }]

Parámetros modificables ("path" y "value" posibles)

  • score = Puntuación (Número, opcional) Valores permitidos: Número entre 0 y 100

  • totaltime = tiempo total (String, opcional) Formato permitido HH:mm:ss

  • firstAccess = Fecha de primer acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

  • lastAccess = Fecha de último acceso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss
  • status = Estado de la evaluación (String, opcional)
    • IN_PROGRESS
    • PASSED
    • NOT_PASSED
    • NOT_STARTED
    • VALIDATED
  • passedDate = Fecha de superación del curso (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss Si no se especifica y el nuevo estado es VALIDATED o PASSED, se establecerá el instante en que se actualiza
  • passedItems = Número de actividades superadas (Integer, opcional)
  • passedMandatoryItems = Número de actividades obligatorias superadas (Integer, opcional)

  • enrolmentMotive = Motivo de inscripción (String, opcional)
  • limitAccessDate = Fecha límite de acceso del alumno (String, opcional) Formato permitido YYYY-MM-DD HH:mm:ss

Validaciones

  • El formato de las fechas es incorrecto --> Error ERR008 / 400 (Bad Request)
  • El formato de la hora es incorrecto --> Error ERR009 / 400 (Bad Request)
  • El estado del alumno es incorrecto --> Error CEV001 / 400 (Bad Request)
  • La puntuación es incorrecta --> Error CEV002 / 400 (Bad Request)
  • La fecha límite de acceso no está permitida --> Error CEV003 / 400 (Bad Request)
  • No se permite modificar la evaluación porque el curso está finalizado --> Error CEV004 / 400 (Bad Request)
  • No existe una evaluación con ese id --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

Eliminar estudiantes de un curso

Método: DELETE

URL:

  • Eliminar por id:
    • /admin/rest/administration/api/courses/id/{id}/students?action={action}
  • Eliminar por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/students?action{action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/students?action=removeByIds

Code Block
titleBODY - application/x-www-form-urlencoded
id=51476&id=654165&id=6566

Parámetros

  • action= acción que se quiere realizar (eliminar usando ids de usuarios o ids externos) (String,obligatorio)
    • Valores permitidos
      • removeByIds
      • removeByExternalids
  • id (lista)= cada uno de los identificadores o identificadores externos (String,obligatorio)

Campos devueltos en el Json (en caso de que algún grupo haya dado error)

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No se pueden eliminar estudiantes del curso --> Error CRS026 / 400 (Bad Request)
  • El curso está bloqueado --> Error CRS027 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los estudiantes han sido eliminados -> 200 (OK)
  • Ejecución OK y algún estudiante no ha podido ser eliminado --> 200 (OK) + JSON

Añadir destinatarios a un curso

Método: POST

URL:

  • Añadir por id:
    • /admin/rest/administration/api/courses/id/{id}/recipients?action={action}
  • Añadir por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/recipients?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/recipients?action=addByIds

Code Block
titleBODY - application/x-www-form-urlencoded
collective[0]=2171&collective[1]=2022&collective[4]=2103

Parámetros

  • action= acción que se quiere realizar (añadir usando ids de usuario o ids externos) (String,obligatorio)
    • Valores permitidos
      • addByIds
      • addByExternalids
  • collective[0] (lista)= Identificador de colectivo destinatarios con los valores de los identificadores o identificadores externos de cada grupo a añadir (String,obligatorio)

Campos devueltos en el Json (en caso de que algún grupo haya dado error)

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • El identificador colectivo debe tener un valor numérico entre 0 y 4 --> Error CRS028 / 400 (Bad Request)
  • Ejecución OK y todos los usuarios han sido añadidos--> 200 (OK)
  • Ejecución OK y algún usuario no ha podido ser añadido --> 200 (OK) + JSON

Obtener destinatarios de un curso sin paginar

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/api/courses/id/{id}/recipients
  • Obtener por external id:
    • /admin/rest/administration/api/courses/externalid/{external_id}/recipients


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:https://demo.central-lms.com/admin/rest/administration/api/courses/id/345/recipients

Campos devueltos en el Json

Listado de colectivo de grupos, cada colectivo consta de los siguientes campos:

  • collective= Número del colectivo
  • groups= Lista de grupos
    • id= Identificador
    • external_id= Id externo
    • parentId= Id del grupo padre
    • name =Nombre de grupo
    • description =Descripción del grupo
    • extendedFields= Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValue
      • extendedFieldName= Nombre del campo extendido
      • extendedFieldValue= Valor del campo extendido

Validaciones

  • Si el curso no existe --> Error 404 (Not Found)
  • No hay grupos --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Eliminar destinatarios de un curso

Método: DELETE

URL:

  • Eliminar por id:
    • /admin/rest/administration/api/courses/id/{id}/recipients?action={action}
  • Eliminar por id externo:
    • /admin/rest/administration/api/courses/externalid/{external_id}/recipients?action={action}


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/5487/recipients?action=removeByIds

Code Block
titleBODY - application/x-www-form-urlencoded
collective[0]=2171&collective[1]=2022&collective[4]=2103

Parámetros

  • action= acción que se quiere realizar (eliminar usando ids de grupos o ids externos) (String,obligatorio)
    • Valores permitidos
      • removeByIds
      • removeByExternalids
  • collective[0] (lista)= Identificador de colectivo de destinatarios con los los identificadores o identificadores externos de cada grupo a eliminar (String,obligatorio)

Campos devueltos en el Json (en caso de que algún grupo haya dado error)

  • status: KO
  • ids / external ids: listado de ids o external ids que han dado error

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • Acción no válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "removeByIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el curso --> Error 400 (Not Found)
  • Ejecución OK y todos los destinatarios han sido eliminados -> 200 (OK)
  • Ejecución OK y algún destinatario no ha podido ser eliminado --> 200 (OK) + JSON

Clonar curso (v1)


Note

Esta versión lleva la entrada con Content-Type: application/x-www-form-urlencoded, se recomienda el uso de la nueva versión, que consume json.

Método: POST

URL: /admin/rest/administration/api/courses

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses

Code Block
titleBODY - application/x-www-form-urlencoded (example 1)
external_id=excourse1&name=Curso de diseño gráfico&clonedFromId=1


Code Block
titleBODY - application/x-www-form-urlencoded (example 2)
external_id=excourse1&name=Curso de diseño gráfico&clonedFromExternalId=excourseToClone

Parámetros

  • external_id= Id externo (String) (warning) Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres\ni/
  • name= Nombre (String)
  • clonedFromId= Identificador de curso que se clona (Long)
  • clonedFromExternalId= Id. externo de curso que se clona (String)  (se deja de usar en la versión JSON)


Note

Debe venir informado el parámetro de clonedFromId o el parámetro clonedFromExternalId

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir --> Error ERR001 / 400 (Bad Request)
  • External id duplicado --> Error ERR006 / 400 (Bad Request)
  • Id. de curso inexistente --> Error ERR004 / 404 (Not Found)
  • Id. externo de curso inexistente --> Error ERR005 / 404 (Not Found)

Respuesta OK

  • 201 (Created) + cabecera 'Location' con el link al recurso creado

Clonar curso (v2)


Note

Se consumirán dos tipos de recursos application/x-www-form-urlencoded y application/json. Se recomienda usar la versión de json.

En la versión json no se puede clonar por externalId. Hay que realizar una búsqueda por externalId de un curso y con el id frealizar una clonación por id.

Método: POST

URL: /admin/rest/administration/api/courses

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses

Code Block
titleBODY - application/x-www-form-urlencoded (example 1) (deprecated)
external_id=excourse1&name=Curso de diseño gráfico&clonedFromId=1


Code Block
titleBODY - application/x-www-form-urlencoded (example 2) (deprecated)
external_id=excourse1&name=Curso de diseño gráfico&clonedFromExternalId=excourseToClone


Code Block
languagejavascript
titleBODY - application/json
 {
  "external_id": "excourse1",
  "name": "Curso de diseño gráfico",
  "clonedFromId": 1
}

Parámetros

  • external_id= Id externo (String) (warning) Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres\ni/
  • name= Nombre (String)
  • clonedFromId= Identificador de curso que se clona (Long)
  • clonedFromExternalId= Id. externo de curso que se clona (String) (se deja de usar en la versión JSON)


Note

Debe venir informado el parámetro de clonedFromId o el parámetro clonedFromExternalId

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir --> Error ERR001 / 400 (Bad Request)
  • External id duplicado --> Error ERR006 / 400 (Bad Request)
  • Id. de curso inexistente --> Error ERR004 / 404 (Not Found)
  • Id. externo de curso inexistente --> Error ERR005 / 404 (Not Found)

Respuesta OK

  • 201 (Created) + cabecera 'Location' con el link al recurso creado

Crear mensaje de bienvenida a curso

Método: POST

URL: /admin/rest/administration/api/courses/welcomeMessage

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/welcomeMessage

Code Block
languagejavascript
titleBODY - application/json
 {
	"id": 72307,
	"studentId": 1,
	"showMessage": "true",
	"message": "Mi mensaje de bienvenida"
}

Parámetros

  • id = Identificador de curso (Longobligatorio
  • studentId= Identificador del estudiante (Longobligatorio)
  • showMessage= Indica si se le debe de mostrar el mensaje al usuario (boolean)
  • message= Mensaje que se le va a mostrar al usuario (Stringobligatorio)

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir --> Error ERR001 / 400 (Bad Request)
  • Id. de curso inexistente --> Error MWM002/ 404 (Not Found)
  • Id. de persona inexistente --> Error MWM003/ 404 (Not Found)
  • Mensaje de bienvenida duplicado --> Error MWM001/ 400 (Bad Request)

Respuesta OK

  • 200 (Created) 

Actualizar mensaje de bienvenida a curso

Método: PUT

URL: /admin/rest/administration/api/courses/id/{id}/welcomeMessage/studentId/{studentId}

Ejemplo: https://demo.central-lms.com/admin/rest/administration/api/courses/id/1/welcomeMessage/studentId/1

Code Block
languagejavascript
titleBODY - application/json
 {
	"showMessage": "true",
	"message": "Mi mensaje de bienvenida"
}

Parámetros

  • showMessage= Indica si se le debe de mostrar el mensaje al usuario (boolean)
  • message= Mensaje que se le va a mostrar al usuario (String, obligatorio)

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir --> Error ERR001 / 400 (Bad Request)
  • Id. de curso inexistente --> Error MWM002/ 404 (Not Found)
  • Id. de persona inexistente --> Error MWM003/ 404 (Not Found)
  • No existe un mensaje de bienvenida para actualizar --> Error MWM004/ 404 (Not Found)

Respuesta OK

  • 200 (OK)

Obtener acciones formativas (v1, v2, v3)

Método: GET

URL: 

  • Obtener por id: 
    • /admin/rest/administration/api/courses/id/{id}/sessions
  • Obtener por external id: 
    • /admin/rest/administration/api/courses/externalid/{externalid}/sessions


Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /

Ejemplo:

Campos devueltos en el Json

Listado de acciones formativas, cada acción formativa consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • sessionType= Tipo de actividad asociado a la acción formativa. Valores posibles: classroom, externalLink, externalwebconference, file, practicalCase, performanceReview, scorm, video, webconference.
  • name= Nombre de la acción formativa
  • startDate= Fecha de inicio de acción formativa (UTC)

  • endDate= Fecha de fin de acción formativa (UTC)

  • capacity= Capacidad de alumnos

  • estimateDuration= Duración estimada

  • confirmedValor true/false. Indica si la acción está confirmada

  • description= Descripción de la acción formativa

  • objectives= Objetivos de la acción formativa

  • comments= Comentarios de la acción formativa

  • status= Estado de la acción formativa.

  • moduleActivity= Objeto de relación de actividad y módulo
    • id= Identificador
    • moduleId = Identificador de módulo
    • activityId = Identificador de actividad

  • extendedFields=Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValues

Parámetros

  • startindex= índice inicial para la paginación (Integer, opcional)
  • count= total de elementos a recuperar para la paginación (Integer, opcional)
  • personId= filtra por el id de un alumno (Long, opcional)
  • personExternalId=filtra por el id externo de un alumno (String, opcional)
  • username= filtra por el nombre de usuario de un alumno (String, opcional)
  • activityId= filtra por el id de una actividad (Long, opcional)
  • moduleActivityId= filtra por el id de una actividad de curso (Long, opcional)

Validaciones

  • Id. de curso inexistente --> Error ERR004 / 404 (Not Found)
  • Id. externo de curso inexistente --> Error ERR005 / 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON
  • Todo OK sin contenido --> 204 (No content)
  • Si hay paginación --> 206 (Partial Content) + JSON


Obtener acciones formativas (v4)

Método: GET

URL: 

  • Obtener por id: 
    • /admin/rest/administration/api/courses/id/{id}/sessions
  • Obtener por external id: 
    • /admin/rest/administration/api/courses/externalid/{externalid}/sessions

Note

Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni /


Ejemplo:

Campos devueltos en el Json

Listado de acciones formativas, cada acción formativa consta de los siguientes campos:

  • id = Identificador
  • external_id = Id externo
  • sessionType = Tipo de actividad asociado a la acción formativa. Valores posibles: classroom, externalLink, externalwebconference, file, practicalCase, performanceReview, scorm, video, webconference.
  • name = Nombre de la acción formativa
  • startDate = Fecha de inicio de acción formativa (UTC)

  • endDate = Fecha de fin de acción formativa (UTC)

  • capacity = Capacidad de alumnos

  • estimateDuration = Duración estimada

  • confirmed = Valor true/false. Indica si la acción está confirmada

  • description = Descripción de la acción formativa

  • objectives = Objetivos de la acción formativa

  • comments = Comentarios de la acción formativa

  • status = Estado de la acción formativa.

  • moduleActivity = Objeto de relación de actividad y módulo
    • id = Identificador
    • moduleId = Identificador de módulo
    • activityId = Identificador de actividad

  • extendedFields = Campos extensibles en lista con clave extendedFieldName y valor extendedFieldValues
  • moderatorUrl = Url de acceso para el formador (* Solo para el caso de sessionType = externalwebconference) 
  • studentUrl = Url de acceso para el estudiante (* Solo para el caso de sessionType = externalwebconference) 
  • trainers = Formadores de la acción formativa (* Solo pasa el caso de sessionType = classroom o externalwebconference o practicalCase o webconference)
    • id = Identificador del formador
    • firstName = Nombre del formador
    • lastName = Apellidos del formador
    • username = Nombre de usuario del formador
    • email = Email del formador
  • rooms rooms = Salas vinculadas a la acción formativa (* Solo para el caso de sessionType = classroom) 
    • id = Identificador de la sala 
    • name = Nombre de la sala
  • scorable = Acción formativa evaluable 
  • minScore = Nota mínima para superar 
  • maxScore = Nota máxima que se puede obtener 
  • scoreToPass = Nota de superación 
  • weightInModule = Peso dentro del curso (* Solo tendrá valor para el caso de evaluación por puntuación mínima) 
  • percentageWeightInModule = Porcentaje del peso dentro del curso (* Solo tendrá valor para el caso de evaluación por puntuación mínima) 

Parámetros

  • startindex = índice inicial para la paginación (Integer, opcional)
  • count = total de elementos a recuperar para la paginación (Integer, opcional)
  • personId= filtra por el id de un alumno (Long, opcional)
  • personExternalId=filtra por el id externo de un alumno (String, opcional)
  • username= filtra por el nombre de usuario de un alumno (String, opcional)
  • activityId= filtra por el id de una actividad (Long, opcional)
  • moduleActivityId= filtra por el id de una actividad de curso (Long, opcional)

Validaciones

  • Id. de curso inexistente --> Error ERR004 / 404 (Not Found)
  • Id. externo de curso inexistente --> Error ERR005 / 404 (Not Found)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON
  • Todo OK sin contenido --> 204 (No content)
  • Si hay paginación --> 206 (Partial Content) + JSON


...

  • name = Nombre del enlace (String, obligatorio)
  • urlLink = El propio enlace (String, obligatorio)

Validaciones

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir --> Error ERR001 / 400 (Bad Request)
  • No permite enlaces (hasLink es falso) --> Error CSR061 / 400 (Bad Request)
  • URL mal formada --> Error CSR062 / 400 (Bad Request)
  • Nombres no introdicidos --> Error CSR063 / 400 (Bad Request)

...

  • Eliminar enlaces por id de curso y nombre de enlace
    • /admin/rest/administration/api/courses/id/{id}/externallinks?name={name}

Parámetros

  • name = Nombre del enlace (String, opcional)

...