API Campos extendidos

Usar codificación de caracteres UTF-8 en el envío de datos

Manual de autenticación y versionado: manual (autenticación y versionado)

Por motivos de seguridad el external_id no puede contener los caracteres \ ni /  (http://tomcat.apache.org/security-6.html).


Consultar campos extendidos

Método: GET

URL: /admin/rest/administration/api/extendedfields

Ejemplo:


[
    {
		"id": 12,
        "name": "TIPO_DOCUMENTO",
        "description": "TIPO_DOCUMENTO",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": "",
        "mandatory": false,
	    "editable": true,
	    "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": true,
        "visibleForTrainerReports": true,
        "visibleForAdminReports": true
    },
    {
		"id": 27,
        "name": "SMT",
        "description": "SMT",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": null,
        "mandatory": false,
        "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": false,
        "visibleForTrainerReports": false,
        "visibleForAdminReports": true
    }
]


Parámetros

  • entity* = Entidad sobre la que se consultan los campos extendidos (obligatorio). Los posibles valores son:
    • user = Usuarios.
    • group = Grupos.
    • plan = Planes.
    • module = Cursos.
    • activity = Actividades.
    • session = Acciones formativas.

Campos devueltos en el Json

Lista de campos extendidos con los siguientes datos:

  • id = Identificador del campo extendido
  • name = Nombre del campo extendido
  • description = Descripción del campo extendido
  • entityTypes = Lista de entidades a la que aplica el campo extendido. Pueden ser de los tipos:
    • USER= Usuarios.
    • GROUP= Grupos.
    • PLAN= Planes.
    • MODULE = Cursos.
    • ACTIVITY = Actividades.
    • SESSION = Acciones formativas.
  • extendedFieldType = Tipo de campo extendido (STRING, INTEGER, BOOLEAN, ENUMERATED)
  • extendedFieldEnumeratedValues = Si es un campo extendido de tipo ENUMERATED, lista con los posibles valores de campo.
  • defaultValue = Valor por defecto
  • mandatory = Indica si el campo extendido es obligatorio
  • editable = Indica si el campo es editable mediante interfaz en central.
  • searchable = Indica si el campo extendido es buscable
  • visibleInUserPortal = Indica si el campo extendido es visible en el portal del alumno
  • visibleInTrainerPortal =  Indica si el campo extendido es visible en el portal del formador
  • visibleForTrainerReports = Indica si el campo extendido es visible en los informes del formador
  • visibleForAdminReports = Indica si el campo extendido es visible en los informes del administrador

Validaciones

  • No se pasa el campo entidad --> Error 400 (Bad request)
  • Error en la generación del Json --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK) + JSON

Consultar campo extendido por identificador

Método: GET

URL: /admin/rest/administration/api/extendedfields/id/{id}

Ejemplo:


    {
		"id": 12,
        "name": "TIPO_DOCUMENTO",
        "description": "TIPO_DOCUMENTO",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": "",
        "mandatory": false,
	    "editable": false,
        "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": true,
        "visibleForTrainerReports": true,
        "visibleForAdminReports": true
    }


Parámetros

  • id*= Identificador del campo extendido (obligatorio)

Campos devueltos en el Json

Campos extendido con los siguientes datos:

  • id = Identificador del campo extendido 
  • name = Nombre del campo extendido
  • description = Descripción del campo extendido
  • entityTypes = Lista de entidads a la que aplica el campo extendido. Pueden ser de los tipos:
    • USER= Usuarios.
    • GROUP= Grupos.
    • PLAN= Planes.
    • MODULE = Cursos.
    • ACTIVITY = Actividades.
    • SESSION = Acciones formativas.
  • extendedFieldType = Tipo de campo extendido (STRING, INTEGER, BOOLEAN, ENUMERATED)
  • extendedFieldEnumeratedValues = Si es un campo extendido de tipo ENUMERATED, lista con los posibles valores de campo.
  • defaultValue = Valor por defecto
  • mandatory = Indica si el campo extendido es obligatorio
  • editable = Indica si el campo es editable mediante interfaz en central.
  • searchable = Indica si el campo extendido es buscable
  • visibleInUserPortal = Indica si el campo extendido es visible en el portal del alumno
  • visibleInTrainerPortal =  Indica si el campo extendido es visible en el portal del formador
  • visibleForTrainerReports = Indica si el campo extendido es visible en los informes del formador
  • visibleForAdminReports = Indica si el campo extendido es visible en los informes del administrador

Validaciones

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

Consultar campo extendido por nombre

Método: GET

URL: /admin/rest/administration/api/extendedfields/name/{nombre_campo}

Ejemplo:


    {
		"id": 12,
        "name": "TIPO_DOCUMENTO",
        "description": "TIPO_DOCUMENTO",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": "",
        "mandatory": false,
        "editable": true,
        "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": true,
        "visibleForTrainerReports": true,
        "visibleForAdminReports": true
    }


Parámetros

  • nombre_campo* = nombre del campo extendido (obligatorio)

Campos devueltos en el Json

Campos extendido con los siguientes datos:

  • id = Identificador del campo extendido 
  • name = Nombre del campo extendido
  • description = Descripción del campo extendido
  • entityTypes = Lista de entidad a la que aplica el campo extendido. Pueden ser de los tipos:
    • USER= Usuarios.
    • GROUP= Grupos.
    • PLAN= Planes.
    • MODULE = Cursos.
    • ACTIVITY = Actividades.
    • SESSION = Acciones formativas.
  • extendedFieldType = Tipo de campo extendido (STRING, INTEGER, BOOLEAN, ENUMERATED)
  • extendedFieldEnumeratedValues = Si es un campo extendido de tipo ENUMERATED, lista con los posibles valores de campo.
  • defaultValue = Valor por defecto
  • mandatory = Indica si el campo extendido es obligatorio
  • editable = Indica si el campo es editable mediante interfaz en central.
  • searchable = Indica si el campo extendido es buscable
  • visibleInUserPortal = Indica si el campo extendido es visible en el portal del alumno
  • visibleInTrainerPortal =  Indica si el campo extendido es visible en el portal del formador
  • visibleForTrainerReports = Indica si el campo extendido es visible en los informes del formador
  • visibleForAdminReports = Indica si el campo extendido es visible en los informes del administrador

Validaciones

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

Crear campo extendido

Método: POST

URL: /admin/rest/administration/api/extendedfields

Ejemplo:


Body - Json
{
        "name": "TIPO_DOCUMENTO",
        "description": "TIPO_DOCUMENTO",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": "",
        "mandatory": false,
        "editable": true,
        "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": true,
        "visibleForTrainerReports": true,
        "visibleForAdminReports": true
 }

Parámetros

  • name* = Nombre del campo extendido (obligatorio)
  • description = Descripción del campo extendido
  • entityTypes* = Lista de entidade a la que aplica el campo extendido (obligatorio). Pueden ser de los tipos:
    • USER= Usuarios.
    • GROUP= Grupos.
    • PLAN= Planes.
    • MODULE = Cursos.
    • ACTIVITY = Actividades.
    • SESSION = Acciones formativas.
  • extendedFieldType* = Tipo de campo extendido (STRING, INTEGER, BOOLEAN, ENUMERATED) (obligatorio)
  • extendedFieldEnumeratedValues = Si es un campo extendido de tipo ENUMERATED, lista con los posibles valores de campo.
  • defaultValue = Valor por defecto
  • mandatory = Indica si el campo extendido es obligatorio
  • editable = Indica si el campo es editable mediante interfaz en central.
  • searchable = Indica si el campo extendido es buscable
  • visibleInUserPortal = Indica si el campo extendido es visible en el portal del alumno
  • visibleInTrainerPortal =  Indica si el campo extendido es visible en el portal del formador
  • visibleForTrainerReports = Indica si el campo extendido es visible en los informes del formador
  • visibleForAdminReports = Indica si el campo extendido es visible en los informes del administrador

Validaciones

  • No se envía json con datos de campo extendido --> Error 400 (Bad Request)
  • Formato incorrecto de json --> Error 400 (Bad Request)
  • Existe un campo extendido con el mismo nombre --> Error 400 (Bad Request)
  • Error en la operación --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK)

Actualizar campo extendido

Método: PUT

URL: /admin/rest/administration/api/extendedfields

Ejemplo:


Body - Json
{
        "name": "TIPO_DOCUMENTO",
        "description": "TIPO_DOCUMENTO",
        "entityTypes": [
            "USER"
        ],
        "extendedFieldType": "STRING",
        "extendedFieldEnumeratedValues": null,
        "defaultValue": "",
        "mandatory": false,
        "editable": true,
        "searchable": true,
        "visibleInUserPortal": true,
        "visibleInTrainerPortal": true,
        "visibleForTrainerReports": true,
        "visibleForAdminReports": true
 }

Parámetros

  • name* = Nombre del campo extendido (obligatorio)
  • description = Descripción del campo extendido
  • entityTypes* = Lista de entidade a la que aplica el campo extendido (obligatorio). Puede ser de los tipos
    • USER= Usuarios.
    • GROUP= Grupos.
    • PLAN= Planes.
    • MODULE = Cursos.
    • ACTIVITY = Actividades.
    • SESSION = Acciones formativas.
  • extendedFieldType* = Tipo de campo extendido (STRING, INTEGER, BOOLEAN, ENUMERATED) (obligatorio)
  • extendedFieldEnumeratedValues = Si es un campo extendido de tipo ENUMERATED, lista con los posibles valores de campo.
  • defaultValue = Valor por defecto
  • mandatory = Indica si el campo extendido es obligatorio
  • searchable = Indica si el campo extendido es buscable
  • visibleInUserPortal = Indica si el campo extendido es visible en el portal del alumno
  • visibleInTrainerPortal =  Indica si el campo extendido es visible en el portal del formador
  • visibleForTrainerReports = Indica si el campo extendido es visible en los informes del formador
  • visibleForAdminReports = Indica si el campo extendido es visible en los informes del administrador

Validaciones

  • No se encuentra el campo extendido --> Error 404 (Not Found)
  • No se envía json con datos de campo extendido --> Error 400 (Bad Request)
  • Formato incorrecto de json --> Error 400 (Bad Request)
  • Error en la operación --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK)

Borrar campo extendido por identificador

Método: DELETE

URL: /admin/rest/administration/api/extendedfields/id/{id}

Ejemplo:

Parámetros

  • id* = Identificador del campo extendido (obligatorio)

Validaciones

  • No se encuentra el campo extendido --> Error 404 (Not Found)
  • Error en la operación --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK)

Borrar campo extendido por nombre

Método: DELETE

URL: /admin/rest/administration/api/extendedfields/name/{name}

Ejemplo:

Parámetros

  • name* = Nombre del campo extendido (obligatorio)

Validaciones

  • No se encuentra el campo extendido --> Error 404 (Not Found)
  • Error en la operación --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK)

Sincronizar usuarios

Método: POST

URL: /admin/rest/administration/api/extendedfields/synchusers

Ejemplo:

Parámetros

Lista con los nombres de los campos extendidos de usuairo:

["TIPO_DOCUMENTO","NIF"]

Validaciones

  • Error en la operación --> Error 503 (Service Unavailable)
  • Todo OK --> 200 (OK)