Versions Compared

Key

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


Panel

Table of Contents
maxLevel1
typeflat

...

  • external_id = Id externo (String, obligatorio(warning) Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni / 
  • username = Nombre de usuario (String, obligatorio)
  • password = Contraseña de usuario (String, opcional)
    • Valor por defecto = vacía
  • firstName = Nombre (String, obligatorio)
  • lastName = Apellidos (String, obligatorio)
  • preferredLanguage = Idioma predeterminado (String, obligatorio)
    • Valores permitidos = los idiomas de la plataforma:
      • en = Inglés, es = Español, pt = Portugués, it = Italiano, gl = Gallego,...
  • personTimezoneId = Zona horaria (String, obligatorio)
    • Valor por defecto:
      • El correspondiente al campo "PlatformTimezone" en la tabla "configurationSettings", el valor actual es "Europe/Paris"
      • Si este no existe, se usa el valor definido en la variable de configuración "configuration.settings.default.timezone", el valor actual es "Etc/GMT"
    • Valores permitidos: 
      • Etc/GMT+12, Etc/GMT+11, Pacific/Honolulu, America/Anchorage, America/Tijuana, America/Los_Angeles, America/Phoenix, America/Chihuahua, America/Denver, America/Guatemala, America/Chicago, America/Mexico_City, America/Regina, America/Bogota, America/New_York, America/Indianapolis, America/Caracas, America/Asuncion, America/Halifax, America/Cuiaba, America/La_Paz, America/Santiago, America/St_Johns, America/Sao_Paulo, America/Buenos_Aires, America/Cayenne, America/Godthab, America/Montevideo, Etc/GMT+2, Etc/GMT+2, Atlantic/Azores, Atlantic/Cape_Verde, Africa/Casablanca, Etc/GMT, Europe/London, Atlantic/Reykjavik, Europe/Berlin, Europe/Budapest, Europe/Paris, Europe/Warsaw, Africa/Lagos, Africa/Windhoek, Asia/Amman, Europe/Istanbul, Asia/Beirut, Africa/Cairo, Asia/Damascus, Africa/Johannesburg, Europe/Kiev, Asia/Jerusalem, Europe/Minsk, Asia/Baghdad, Asia/Riyadh, Africa/Nairobi, Asia/Tehran, Europe/Moscow, Asia/Dubai, Asia/Baku, Indian/Mauritius, Asia/Tbilisi, Asia/Yerevan, Asia/Kabul, Asia/Karachi, Asia/Tashkent, Asia/Calcutta, Asia/Colombo, Asia/Katmandu, Asia/Yekaterinburg, Asia/Almaty, Asia/Dhaka, Asia/Rangoon, Asia/Novosibirsk, Asia/Bangkok, Asia/Krasnoyarsk, Asia/Shanghai, Asia/Singapore, Australia/Perth, Asia/Taipei, Asia/Ulaanbaatar, Asia/Irkutsk, Asia/Tokyo, Asia/Seoul, Australia/Adelaide, Australia/Darwin, Asia/Yakutsk, Australia/Brisbane, Australia/Sydney, Pacific/Port_Moresby, Australia/Hobart, Asia/Vladivostok, Pacific/Guadalcanal, Asia/Magadan, Pacific/Auckland, Etc/GMT-12, Pacific/Fiji, Asia/Kamchatka, Pacific/Tongatapu, Pacific/Apia
  • roles = Roles del usuario (Lista de Strings, obligatorio)
    • Valores permitidos:
      • SYSTEM_TRAINER
      • SYSTEM_ADMINISTRATOR
      • SYSTEM_ADMINISTRATOR_TRAINING
      • SYSTEM_TEAM_MANAGER
      • SYSTEM_STUDENT
      • SYSTEM_SUPPORT
      • SYSTEM_AUDITOR (prevalece sobre el rol SYSTEM_ADMINISTRATOR)
  • status = Estado (String, obligatorio)
    • Valores permitidos:
      • ACTIVE
      • INACTIVE
  • email = Correo electrónico del usuario (String, obligatorio)
  • officePhoneNumber = Teléfono de oficina (String, opcional)
  • mobilePhoneNumber = Teléfono móvil (String, opcional)
  • address = Dirección (String, opcional)
  • jobTitle = Puesto (String, opcional)
  • location = Departamento (String, opcional)
  • organization = Compañía (String, opcional)
  • aboutMe = Sobre mí (String, opcional)
  • interests = Intereses (String, opcional)
  • extendedField[nombre del campo extendido] (lista) = Nombre y valor de los campos extensibles (clave-valor de Strings, opcional*)
    * solo son obligatorios aquellos campos extensibles que estén marcados como obligatorios y no tengan definido ningún valor por defecto
    • Valores permitidos:
      • Si el campo extendido es de tipo texto --> cualquier texto
      • Si el campo extendido es de tipo entero --> sólo números
      • Si el campo extendido es de tipo si/no --> valores "true" o "false"
      • Si el campo extendido es de tipo lista de valores --> un valor de la lista
  • teamManagerUsername = Nombre de usuario de un jefe de equipo (String, opcional)

...

  • external_id = Id externo (String, obligatorio(warning) Recuerda que por motivos de seguridad, el external_id no puede contener los caracteres \ ni / 
  • username = Nombre de usuario (String, obligatorio)
  • firstName = Nombre (String, obligatorio)
  • lastName = Apellidos (String, obligatorio)
  • preferredLanguage = Idioma predeterminado (String, obligatorio)
    • Valores permitidos = los idiomas de la plataforma:
      • en = Inglés, es = Español, pt = Portugués, it = Italiano, gl = Gallego,...
  • personTimezoneId = Zona horaria (String, obligatorio)
    • Valor por defecto :
      • El correspondiente al campo "PlatformTimezone" en la tabla "configurationSettings", el valor actual es "Europe/Paris"
      • Si este no existe, se usa el valor definido en la variable de configuración "configuration.settings.default.timezone", el valor actual es "Etc/GMT"
    • Valores permitidos: 
      • Etc/GMT+12, Etc/GMT+11, Pacific/Honolulu, America/Anchorage, America/Tijuana, America/Los_Angeles, America/Phoenix, America/Chihuahua, America/Denver, America/Guatemala, America/Chicago, America/Mexico_City, America/Regina, America/Bogota, America/New_York, America/Indianapolis, America/Caracas, America/Asuncion, America/Halifax, America/Cuiaba, America/La_Paz, America/Santiago, America/St_Johns, America/Sao_Paulo, America/Buenos_Aires, America/Cayenne, America/Godthab, America/Montevideo, Etc/GMT+2, Etc/GMT+2, Atlantic/Azores, Atlantic/Cape_Verde, Africa/Casablanca, Etc/GMT, Europe/London, Atlantic/Reykjavik, Europe/Berlin, Europe/Budapest, Europe/Paris, Europe/Warsaw, Africa/Lagos, Africa/Windhoek, Asia/Amman, Europe/Istanbul, Asia/Beirut, Africa/Cairo, Asia/Damascus, Africa/Johannesburg, Europe/Kiev, Asia/Jerusalem, Europe/Minsk, Asia/Baghdad, Asia/Riyadh, Africa/Nairobi, Asia/Tehran, Europe/Moscow, Asia/Dubai, Asia/Baku, Indian/Mauritius, Asia/Tbilisi, Asia/Yerevan, Asia/Kabul, Asia/Karachi, Asia/Tashkent, Asia/Calcutta, Asia/Colombo, Asia/Katmandu, Asia/Yekaterinburg, Asia/Almaty, Asia/Dhaka, Asia/Rangoon, Asia/Novosibirsk, Asia/Bangkok, Asia/Krasnoyarsk, Asia/Shanghai, Asia/Singapore, Australia/Perth, Asia/Taipei, Asia/Ulaanbaatar, Asia/Irkutsk, Asia/Tokyo, Asia/Seoul, Australia/Adelaide, Australia/Darwin, Asia/Yakutsk, Australia/Brisbane, Australia/Sydney, Pacific/Port_Moresby, Australia/Hobart, Asia/Vladivostok, Pacific/Guadalcanal, Asia/Magadan, Pacific/Auckland, Etc/GMT-12, Pacific/Fiji, Asia/Kamchatka, Pacific/Tongatapu, Pacific/Apia
  • roles = Roles del usuario (Lista de Strings, obligatorio)
    • Valores permitidos:
      • SYSTEM_TRAINER
      • SYSTEM_ADMINISTRATOR
      • SYSTEM_ADMINISTRATOR_TRAINING
      • SYSTEM_TEAM_MANAGER
      • SYSTEM_STUDENT
      • SYSTEM_SUPPORT
      • SYSTEM_AUDITOR (prevalece sobre el rol SYSTEM_ADMINISTRATOR)
  • status = Estado (String, obligatorio)
      • Valores permitidos:
        • ACTIVE
        • INACTIVE
  • email = Correo electrónico del usuario (String, obligatorio)
  • officePhoneNumber = Teléfono de oficina (String, opcional)
  • mobilePhoneNumber = Teléfono móvil (String, opcional)
  • address = Dirección (String, opcional)
  • jobTitle = Puesto (String, opcional)
  • location = Departamento (String, opcional)
  • organization = Compañía (String, opcional)
  • aboutMe = Sobre mí (String, opcional)
  • interests = Intereses (String, opcional)
  • extendedField[nombre del campo extendido] (lista) = Nombre y valor de los campos extensibles (clave-valor de Strings, opcional*)
    * Solo son obligatorios aquellos campos extensibles que estén marcados como obligatorios y no tengan definido ningún valor por defecto
    • Valores permitidos:
      • Si el campo extendido es de tipo texto --> cualquier texto
      • Si el campo extendido es de tipo entero --> sólo números
      • Si el campo extendido es de tipo si/no --> valores "true" o "false"
      • Si el campo extendido es de tipo lista de valores --> un valor de la lista
  • teamManagerUsername = Nombre de usuario de un jefe de equipo (String, opcional)

...

Cabeceras

  • X-origin: Opcional, valores permitidos:
    • lCloud: peticiones con origen Learning Cloud
    • lCentral: peticiones con origen Learning Central

...

  • No hay cursos --> Error 204 (No Content)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Filtro por usuario incorrecto --> Error 400 (Bad request)

Todo OK

  • 200 (OK) + JSON

Dar acceso a usuarios

Método: POST

URL:

  • Dar acceso por id:
    • /admin/rest/administration/api/sessions/id/{id}/students
  • Dar acceso por external id:
    • /admin/rest/administration/api/sessions/externalid/{external_id}/students

Ejemplo:

https://clowd-central.learningcloud.me/admin/rest/administration/api/collections/id/2004/students


BODY - application/json


{
  "ids":[1,2,3],
  "externalIds":["ext1", "ext2", "ext4"]
}


 Parámetros

Objeto json con dos listados:

  • ids = Listado de identificadores de alumnos.
  • externalIds = Listado de identificadores externos de alumnos.

Validaciones

  • No existe una colección con ese id/externalid --> Error 404 (Not Found) código de error ERR004/ERR005 dependiendo de si es id o externalid.
  • La colección tiene política de acceso libre --> Error CLL005/ 400 (Bad Request)
  • Errores que provocan un estado 200, se devuelve un listado de json con códigos de errores y se inscriben el resto de alumnos que no dieron error (si no queda ninguno también devuelve un 200).
    • Id de alumno no encontrado --> Error CLL006/ 200
    • Id externo de alumno no encontrado --> Error CLL007/ 200
    • El alumno ya tiene acceso a la colección --> Error CLL004/ 200
  • Error inesperado –> Error 500
  • Todo OK --> 200 (OK)

Excluir usuarios de colección

Método: DELETE

URL:

  • Excluir usuarios por id:
    • /admin/rest/administration/api/sessions/id/{id}/removeStudents
  • Excluir usuarios por external id:
    • /admin/rest/administration/api/sessions/externalid/{external_id}/removeStudents

Ejemplo:

https://clowd-central.learningcloud.me/admin/rest/administration/api/collections/id/2004/removeStudents


BODY - application/json


{
  "ids":[1,2,3],
  "externalIds":["ext1", "ext2", "ext4"]
}


 Parámetros

Objeto json con dos listados:

  • ids = Listado de identificadores de alumnos.
  • externalIds = Listado de identificadores externos de alumnos.

Validaciones

  • No existe una colección con ese id/externalid --> Error 404 (Not Found) código de error ERR004/ERR005 dependiendo de si es id o externalid.
  • Errores que provocan un estado 200, se devuelve un listado de json con códigos de errores y se excluyen el resto de alumnos que no dieron error (si no queda ninguno también devuelve un 200).
    • Id de alumno no encontrado --> Error CLL006/ 200
    • Id externo de alumno no encontrado --> Error CLL007/ 200
  • Error inesperado –> Error 500
  • Todo OK --> 200 (OK)