Versions Compared

Key

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

Table of Contents
maxLevel1
typeflat

 

Crear

...

usuario

Método: POST

URL: /admin/rest/administration/v1/users

...

  • external_id = Id externo (String, obligatorio)
  • 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
  • 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 de trabajo (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 --> el identificador correspondiente al valor en la lista

...

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • El nombre Nombre de usuario no es válido --> USR001 / 400 (Bad Request)
  • La contraseña Contraseña no cumple el patrón establecido (debe tener al menos cuatro caracteres y no contener espacios) --> Error USR002 / 400 (Bad Request)
  • El identificador Identificador del idioma no existe --> Error USR003 / 400 (Bad Request)
  • El identificador Identificador de la zona horaria no existe --> No da error, se estable la zona horaria por defecto
  • Los roles son Roles incorrectos --> Error USR004 / 400 (Bad Request)
    • Algún rol no existe
    • O son correctos pero se han asignado los roles de administrador y administrador de formación a la vez
    El estado
    • O son correctos pero se ha asignado el rol de soporte, pero no el de administrador
  • Estado del usuario no es válido --> Error USR005 / 400 (Bad Request)
  • El email Email no es válido --> Error USR006 / 400 (Bad Request)
  • El número de teléfono de oficina no es válido --> Error USR007 / 400 (Bad Request)
  • El número Número de teléfono móvil no es válido --> Error USR008 / 400 (Bad Request)
  • El nombre Nombre de usuario está duplicado --> Error USR009 / 400 (Bad Request)
  • El external id está Id externo duplicado --> Error ERR006 / 400 (Bad Request)
  • Error inesperado asignando los roles --> Error USR010 / 400 (Bad Request)
  • El nombre de un campo extensible no existe --> Error DYN001 / 400 (Bad Request)
  • El valor de un campo extensible tiene un tipo incorrecto --> Error DYN002 / 400 (Bad Request)
  • Falta algún campo extensible obligatorio --> Error DYN003 / 400 (Bad Request)
    • No se ha incluido el campo obligatorio en la petición y no tiene asignado el valor por defecto
    • Se ha incluido el campo en la petición pero se le ha asignado un valor vacío
  • Todo OK --> 201 (Created) + id del nuevo usuario

 

Modificar

...

usuario

Método: PUT

URL:

  • Actualizar por id:
    • /admin/rest/administration/v1/users/id/{id}
  • Actualizar por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}

...

  • external_id = Id externo (String, obligatorio)
  • 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
  • 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 de trabajo (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 --> el identificador correspondiente al valor en la lista

...

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • El nombre Nombre de usuario no es válido --> USR001 / 400 (Bad Request)
  • El identificador Identificador del idioma no existe --> Error USR003 / 400 (Bad Request)
  • El identificador Identificador de la zona horaria no existe --> No da error, se estable la zona horaria por defecto
  • Los roles son incorrectos --> Error USR004 / 400 (Bad Request)
    • Algún rol no existe
    • O son correctos pero se han asignado los roles de administrador y administrador de formación a la vez
    El estado del usuario no es
    • asignado los roles de administrador y administrador de formación a la vez
    • O son correctos pero se ha asignado el rol de soporte, pero no el de administrador
  • Estado del usuario no válido --> Error USR005 / 400 (Bad Request)
  • El email Email no es válido --> Error USR006 / 400 (Bad Request)
  • El número Número de teléfono de oficina no es válido --> Error USR007 / 400 (Bad Request)
  • El número Número de teléfono móvil no es válido --> Error USR008 / 400 (Bad Request)
  • El nombre de usuario está duplicado --> Error USR009 / 400 (Bad Request)
  • El external id está Id externo duplicado --> Error ERR006 / 400 (Bad Request)
  • Error inesperado asignando los roles --> Error USR010 / 400 (Bad Request)
  • El nombre de un campo extensible no existe --> Error DYN001 / 400 (Bad Request)
  • El valor de un campo extensible tieneun  tipo incorrecto --> Error DYN002 / 400 (Bad Request)
  • Falta algún campo extensible obligatorio --> Error DYN003 / 400 (Bad Request)
    • No se ha incluido el campo obligatorio en la petición y no tiene asignado el valor por defecto
    • Se ha incluido el campo en la petición pero se le ha asignado un valor vacío
  • No existe el usuario --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

 

Modificar

...

contraseña

Método: PUT

URL:

  • Modificar por id:
    • /admin/rest/administration/v1/users/id/{id}/password
  • Modificar por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/password

...

Parámetros

  • value = Nueva nueva contraseña (String, obligatorio)

...

  • La nueva contraseña está vacía o es incorrecta (debe tener al menos cuatro caracteres y no contener espacios) --> Error 400 (Bad Request)
  • No existe el usuario --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

 

Añadir

...

imagen de perfil

Método: POST

URL:

  • Añadir por id:
    • /admin/rest/administration/v1/users/id/{id}/image
  • Añadir por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/image

...

  • No se ha incluido ningún fichero --> Error ERR001 / 400 (Bad Request)
  • No existe el usuario:
    • Añadiendo por id --> Error ERR004/ 400 (Bad Request)
    • Añadiendo por external id --> Error ERR005/ 400 (Bad Request)
  • La imagen no es válida:
    • Extensión no permitida --> Error USR011 / 400 (Bad Request)
    • Tamaño superior al permitido --> Error USR012 / 400 (Bad Request)
  • El contenido de la imagen ha provocado algún error inesperado --> Error USR013 / 400 (Bad Request)
  • Error en el respositorio de imágenes --> Error USR014 / 400 (Bad Request)
  • No se ha podido actualizar la imagen --> Error USR015 / 400 (Bad Request)
  • Todo OK --> 200 (OK)

 

Eliminar

...

imagen de perfil

Método: DELETE

URL:

  • Eliminar por id:
    • /admin/rest/administration/v1/users/id/{id}/image
  • Eliminar por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/image

...

  • No existe el usuario:
    • Eliminando por id --> Error ERR004/ 400 (Bad Request)
    • Eliminando por external id --> Error ERR005/ 400 (Bad Request)
  • Error en el respositorio de imágenes --> Error USR014 / 400 (Bad Request)
  • No existe la imagen --> Error 404 (Not Found)
  • Todo OK --> 200 (OK)

 

Activar/Desactivar

...

usuario

Método: PUT

URL: /admin/rest/administration/v1/users?action={action}

...

Parámetros

  • action = Acción acción que se quiere realizar (activar o desactivar usuarios) (String, obligatorio)
    • Valores permitidos: permitidos 
      • activateByExternalid
      • activateById
      • deactivateByExternalid
      • deactivateById
  • id (lista) = Cada cada uno de los identificadores o identificadores externos (String, obligatorio)

...

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

...

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

 

Obtener todos los usuarios

Método: GET

URL:

  • Obtener todos los usuarios sin paginación:
    • /admin/rest/administration/v1/users
  • Obtener todos los usuarios con paginación:
    • /admin/rest/administration/v1/users?startIndex={startIndex}&count={count}

...

  • Índices erróneos --> Error 416 (Requested Range Not Satisfiable)
    • Usando paginación, ambos índices deben tener un valor
  • 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

...

usuario

Método: GET

URL: 

  • Obtener por id:
    • /admin/rest/administration/v1/users/id/{id}
  • Obtener por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}
  • Obtener por username:
    • /admin/rest/administration/v1/users/username/{username}

...

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

 

Eliminar

...

usuario

Borra el usuario y lo elimina de todos los grupos a los que pertenezca.

...

  • No existe el usuario --> Error 404 (Not Found)
  • El usuario está en estado "Activo" --> Error 400 (Bad Request)
  • Todo OK --> 200 (OK)

 

Añadir grupos a un usuario

Método: POST

URL:

  • Añadir por id:
    • /admin/rest/administration/v1/users/id/{id}/groups?action={action}
  • Añadir por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/groups?action={action}

...

Parámetros

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

...

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • La acción Acción no es válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "addByGroupIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el usuario --> 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

 

Obtener grupos de un usuario

Método: GET

URL:

  • Obtener por id:
    • /admin/rest/administration/v1/users/id/{id}/groups
  • Obtener por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/groups

...

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

 

Eliminar grupos de un usuario

Método: DELETE

URL:

  • Eliminar por id:
    • /admin/rest/administration/v1/users/id/{id}/groups?action={action}
  • Eliminar por external id:
    • /admin/rest/administration/v1/users/externalid/{external_id}/groups?action={action}

...

Parámetros

  • action = Acción acción que se quiere realizar (borrar usando ids de grupos o ids externos) (String, obligatorio)
    • Valores permitidos:
      • removeByGroupIds
      • removeByGroupExternalids
  • id (lista) = Cada cada uno de los identificadores o identificadores externos (String, obligatorio)

...

  • Lista de parámetros vacía o algún campo obligatorio sin cubrir--> Error ERR001 / 400 (Bad Request)
  • La acción Acción no es válida (no se comprueban mayúsculas/minúsculas) --> Error ERR002 / 400 (Bad Request)
  • Se ha escogido la acción "removedByGroupIds" y algún id no es numérico --> Error ERR003 / 400 (Bad Request)
  • No existe el usuario --> 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

...