API del Servicio Web del Directorio

RECU-0439 (Recurso API)

Descripción

El API de Servicios Web es el que proporciona el acceso hacia el Directorio. En general serán métodos de creación, actualización y consulta que permitirán a las aplicaciones abstraerse de la estructura lógica de las ramas del Directorio. Existirán distintos métodos según el tipo de objeto que se consulte y la operación que se va a realizar.

Los métodos de los Servicios Web estarán orientado a mensajes. Esto quiere decir que cada método del Servicio Web recibirá un solo parámetro (mensaje) y podrá devolver un resultado. Los posibles errores se enviaran en el segmento SOAP Fault del protocolo SOAP.

La codificación de los Servicios Web se ha realizado según el marco de desarrollo de la Junta de Andalucía, Madeja.

Descripción de métodos

Métodos de Identidad

En este grupo se incluyen aquellos métodos que permiten buscar y modificar identidades en el directorio. Las identidades sólo pueden ser creadas por las fuentes autoritativas. Sólo los atributos que no proceden de fuente autoritativa podrán ser modificados por aplicaciones externas.

Existen dos métodos básicos de consulta de identidad, que devuelve una identidad a partir de su identificador. Uno de los métodos devolverá una identidad con sus atributos básicos y el otro método con los atributos completos. El tercer método realiza una búsqueda en el Directorio y devuelve aquellas entradas que cumplan los criterios.

[DEPRECATED] Identidad consultarIdentidad(String)
Este método obtiene los datos de una identidad a partir del identificador (NIE/NIF) de la Identidad.
Parámetros
IdentificadorStringDocumento de identificacion de la identidad
Salida
Instancia de Identidad con los atributos de la identidad
Errores
0Error interno
1No existe la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
Identidad consultarIdentidadCompleta(String)
Este método es igual al anterior excepto que devuelve una lista mayor de los atributos de la identidad
Parámetros
IdentificadorStringObligatorio. Documento de identificacion de la identidad
Salida
Instancia de Identidad con los atributos de la identidad
Errores
0Error interno
1No existe la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
Atributo[] consultarAtributosIdentidad(ConsultaAtributos)
Este método permite consultar atributos de una identidad. Para ello en el mensaje de entrada hay que indicar el identificador de la identidad y una lista con los identificadores de los atributos en el directorio de la identidad. El método devolverá una secuencia de nombre/valor con los atributos que se han indicado. Este método se ha quedado obsoleto, se recomienda usar en su lugar consultarAtributosIdentidadExt.
Parámetros
IdentificadorStringDocumento de identificacion de la identidad
IdAtributoList<String>Lista de atributos a consultar de la cuenta de la identidad en el directorio. Ejemplo: “sn”, “displayname”. La lista debe contener al menos un atributo
Salida
Array de objetos Atributo, pares nombre/valor.
Errores
0Error interno
1No existe la identidad
2No dispone de permiso para realizar la operación / No se permite el acceso al atributo
5No se ha especificado un listado de atributos
6No se ha recibido algún parámetro obligatorio para realizar la operación.
[DEPRECATED] Identidad[] consultarIdentidades(ConsultaIdentidade)
Los parámetros de filtro que se van a aplicar. Aquellos parámetros rellenos formaran parte del filtro, los que sean nulos se ignoraran. Los filtros rellenos se concatenan como condiciones “and” de modo que si relleno el nombre y apellido1 buscara las identidades que coincidan en esos dos campos. El parámetro búsqueda exacta si esta a “true” la consulta comprobará que los filtros coincidan exactamente en caso contrario el filtro que se ejecuta es del tipo “contiene”.
Parámetros
nombreStringOpcional. Buscar identidad con (o conteniendo) el nombre indicado.
apellido1StringOpcional. Buscar identidad con (o conteniendo) el primer apellido indicado.
apellido2StringOpcional. Buscar identidad con (o conteniendo) el segundo apellido indicado
organismoStringOpcional. Buscar identidades que pertenecen al organismo indicado.
esBusquedaExactaBooleanSi el valor es “true” comprueba exactamente el filtro de busqueda. En caso contrario, se ejecuta el filtro de tipo “contiene”.
ticketStringOpcional. Ticket de control de paginación de resultados.
maxResultadosintNúmero máximo de resultados a devolver.
Salida
Array de objetos Identidad con la lista de los atributos de la identidad.
Errores
0Error interno
2No dispone de permiso para realizar la operación
3Los parámetros para el filtro son incorrectos
IdentidadExtendida consultarIdentidadExt(ConsultarIdentidadExt)
Este método permite realizar una consulta de una identidad por cualquiera de los identificadores de esta. Hay que indicarle al método el identificador que se quiere usar y el valor de este.
Parámetros
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador
Salida
Atributos de la identidad.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación.
Atributo[] consultarAtributosIdentidadExt(ConsultarAtributosIdentidadExt)
Este método permite realizar la consulta de atributos de una identidad. El método devuelve una secuencia de nombre/valor con los atributos que se han indicado en la consulta.
Parámetros
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador
idAtributoListObligatorio, no vacío. Lista de atributos a consultar de la cuenta de la identidad en el directorio. Ejemplo: “sn”, “displayname”
Salida
Secuencia de atributos, siendo cada atributo un par nombre/valor.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
5No se ha especificado un listado de atributos
6No se ha recibido algún parámetro obligatorio para realizar la operación.
IdentidadExtendida[] consultarIdentidadesExt(ConsultarIdentidadesExt)
Este método obtiene una lista de objetos de identidad a partir de unos parámetros de filtrado.
Parámetros
nombreStringOpcional. Buscar identidad con (o conteniendo) el nombre indicado.
apellido1StringOpcional. Buscar identidad con (o conteniendo) el primer apellido indicado.
apellido2StringOpcional. Buscar identidad con (o conteniendo) el segundo apellido indicado.
organismoStringOpcional. Buscar identidades que pertenecen al organismo indicado.
CorreoStringOpcional. Correo electrónico de la identidad
esBusquedaExactaBooleanSi el valor es “true” comprueba exactamente el filtro de busqueda. En caso contrario, se ejecuta el filtro de tipo “contiene”.
ticketStringOpcional. Ticket de control de paginación de resultados.
maxResultadosintNúmero máximo de resultados a devolver.
Salida
IdentidadExtendidaListaType. La salida es una lista de identidades.
Errores
0
Error interno
2No dispone de permiso para realizar la operación
3Los parámetros para el filtro son incorrectos
[DEPRECATED] void actualizarIdentidad(ActualizaIdentidad)
Con este método es posible actualizar una serie de propiedades de las identidades, siempre que se tenga permiso para ello. La identidad que se quiere actualizar se indica a partir del identificador NIF/NIE. Aquellas propiedades de la identidad que se actualicen será las que tengan un valor distinto de null. Para eliminar el valor de una propiedad basta con ponerle un valor a blanco. Este método se ha quedado obsoleto, se recomienda usar en su lugar actualizarIdentidadExt.
Parámetros
IdentificadorStringDocumento de identificacion de la identidad
TeléfonoStringOpcional. Numero de telefono principal de la identidad
Teléfono2StringOpcional. Numero de telefono secundario de la identidad
TelefonoMovilStringOpcional. Telefono movil de la identidad
CodigoEdificioStringOpcional. Codigo de edificio
MailStringOpcional. Correo electronico de la identidad
UsuarioJupiterStringOpcional. Usuario Jupiter.
Salida
No hay mensaje de salida. En caso de error este se trasmitirá mediante SOAP Fault.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
5No se ha especificado un listado de atributos
6No se ha recibido algún parámetro obligatorio para realizar la operación.
void actualizarIdentidadExt(ActualizaIdentidad)
Con este método es posible actualizar una serie de atributos de las identidades, siempre que se tenga permiso para ello. Hay que indicar la identidad y el atributo que se le quiere actualizar.
Parámetros
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador
idAtributoStringObligatorio. Identificador del atributo
valorStringObligatorio. Nuevo valor del atributo
Salida
No hay mensaje de salida. En caso de error este se trasmitirá mediante SOAP Fault.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación.

Métodos de grupo

Aquí se incluyen los métodos de acceso a los distintos grupos que existen en el directorio. Dentro del directorio tenemos grupos de Unidades Operativas (UO) y Grupos de Trabajo.

Para los Grupos de Unidades Operativas sólo se tendrán métodos para obtener las identidades y responsables de un grupo y para buscar grupos. Para los Grupos de Trabajo se tendrán también métodos de añadir/quitar identidades del grupo, crear/modificar/eliminar grupos.

Unidades Operativas

Sobre los Grupos de Unidades Operativas (UO) sólo existen operaciones de consulta. La operación de obtener los miembros de una UO, indicando si se devuelven los miembros del grupo o los responsables del grupo, si se obtienen los internos, externos o ambos. La operación de buscar UO según algún criterio, por ejemplo aquellas UO a las que pertenece determinado usuario o de las que es responsable determinado usuario.

Identidad[] obtenerMiembrosUOO(MensajeBuscarIdentidades)
Este método obtiene las identidades que forman parte de una UO o los administradores de dicha unidad.
Parámetros
IdUooString“Cn” o identificador de la unidad operativa.
OrganismoStringOrganismo al que pertenece la uoo
SoloResponsablesBooleanSi es “true” devuelve los responsables de la unidad, si es “false” simplemente los miembros
TicketStringTicket de control de paginación de resultados.
MaxResultadosintOpcional. Número máximo de resultados a recibir por página en búsquedas paginadas.
Salida
La salida es una secuencia de identidades igual que el caso de búsqueda de identidades.
Errores
0Error interno
1No se encontró la UOO
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación.
UOO obtenerUOO(ObtenerUOO)
Este método Obtiene la información de una UO a partir de su identificador y el organismo al que pertenece.
Parámetros
IdUooString“Cn” o identificador de la unidad operativa.
OrganismoStringOrganismo al que pertenece la UOO
Salida
La salida es una secuencia con los atributos de la UOO encontrada.
Errores
0Error interno
1No se encontró la UOO
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación.
[DEPRECATED] String[] obtenerIdentificadorUOO(MensajeBuscarGrupoUOO)
Este método busca UOOs en el directorio a partir de ciertos filtros. Los filtros son las UOOs a las que pertenece una identidad y las UOOs de las que una identidad es responsable. Este método se ha quedado obsoleto, se recomienda usar en su lugar obtenerIdentificadorUOOExt.
Parámetros
identificadorIdentidadStringDocumento de identificación de la identidad de la que se consultan sus UO.
esResponsableStringSi es “true” consulta las UO de las que es responsable la identidad. En caso contrario, si es “false” devuelve las UO a las que pertenece como miembro.
organismoList<String>Listado de organismo sobre el que se quiere realizar la búsqueda. La lista debeá contener al menos un organismo.
Salida
La salida es una secuencia con los identificadores de las UOOs encontradas.
Errores
0Error interno
1No se encontró la UOO
2No dispone de permiso para realizar la operación
3No existen resultados.
[DEPRECATED] UOO[] obtenerUOOs(MensajeBuscarGrupoUOO)
Este método busca UOOs en el directorio a partir de ciertos filtros. Los filtros son las UOOs a las que pertenece una identidad y las UOOs de las que una identidad es responsable. Este método se ha quedado obsoleto, se recomienda usar en su lugar obtenerUOsExt.
Parámetros
IdentificadorIdentidadStringDocumento de identificación de la identidad de la que se consultan sus UO.
esResponsableStringSi es “true” consulta las UO de las que es responsable la identidad. En caso contrario, si es “false” devuelve las UO a las que pertenece como miembro.
OrganismoList<String>  
Listado de organismo sobre el que se quiere realizar la búsqueda. La lista debeá contener al menos un organismo.
Salida
La salida es una secuencia con los atributos de las UOOs encontradas.
Errores
0Error interno
1No se encontró la UOO
2No dispone de permiso para realizar la operación
NodoUOOType obtenerArbolUOO(ObtenerArbolUOO)
Este método devuelve una estructura jerárquica de las UO del directorio. La raíz del árbol es un nodo “JdA” que contendrá un nodo por cada organismo al que se tenga acceso. Dentro del nodo de cada organismo cuelga el sub árbol con las UO de ese organismo.
Parámetros
OrganismoStringOrganismo del que se consultan las unidades operativas. Si no se establece valor, se devuelve los arboles de uoo de todos los organismo de los que se tiene permiso de lectura.
Salida
La salida es la información de la uoo que actúa como padre del árbol y a su vez una secuencia con la información de las uoo hijas.
Errores
0Error interno
2No dispone de permiso para realizar la operación
UOO[] buscarUOO(BuscarUOO)
Realiza una búsqueda sobre las UOOs de trabajo.
Parámetros (optativos)
IdentificadorStringFiltra por “cn” (identificador) de la uoo
DescripcionStringFiltra por campo “description” de la uoo
OrganismoStringFiltra por organismo
Salida
La salida es una secuencia con los atributos de las UOOs encontradas.
Errores
0
Error interno
2No dispone de permiso para realizar la operación
3No existen uoo para este organismo
UOO[] obtenerUOOsGrupo(ObtenerUOOsGrupo)
Lista las UOs existentes en un grupo de trabajo.
Parámetros
IdGrupoStringIdentificador del grupo.
OrganismoStringOrganismo al que pertenece el grupo.
Salida
La salida es una secuencia con las UOOs encontradas en el grupo.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
String [] obtenerIdentificadorUOOExt(MensajeBuscarGrupoUOO)
Método análogo a obtenerIdentificadorUOO, excepto que permite usar cualquier identificador de la identidad y no sólo el NIF/NIE como el anterior.
Parámetros
tipoIdentificadorStringObligatorio. Código del identificador
valorIdentificadorStringObligatorio. Valor del identificador
esResponsableStringObligatorio. Si es “true” consulta las UO de las que es responsable la identidad. En caso contrario, si es “false” devuelve las UO a las que pertenece como miembro.
organismoListObligatorio, no vacío. Listado de organismo sobre el que se quiere realizar la búsqueda.
Salida
Secuencia con los identificadores de las UO encontradas.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación  
3No existen resultados
UOO [] obtenerUOsExt(MensajeBuscarGrupoUOO)
Método análogo a obtenerIdentificadorUOO, excepto que permite usar cualquier identificador de la identidad y no sólo el NIF/NIE como el anterior.
Parámetros
tipoIdentificadorStringObligatorio. Código del identificador
valorIdentificadorStringObligatorio. Valor del identificador
esResponsableStringObligatorio. Si es “true” consulta las UO de las que es responsable la identidad. En caso contrario, si es “false” devuelve las UO a las que pertenece como miembro.
organismoListObligatorio, no vacío. Listado de organismo sobre el que se quiere realizar la búsqueda.
Salida
Secuencia con los atributos de las UO encontradas.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación

Grupos de Trabajo

Sobre los Grupos de Trabajo se tienen varias operaciones que permiten las mismas funciones que sobre los grupos de UO y aparte realizar búsquedas, obtener usuarios y añadir/eliminar/modificar grupos, añadir/quitar usuarios de grupos.

Identidad[] obtenerMiembrosGrupoTrabajo(ConsultaIdentidadesGrupo)
Obtiene la lista de identidades que pertenece o es responsable de un grupo.
Parámetros
IdGrupoStringIdentificador del grupo de trabajo
OrganismoStringOrganismo al que pertenece
SoloResponsablesBooleanSi es “true” devuelve los responsables del grupo, si es “false” simplemente los miembros
TicketStringTicket de control de paginación de resultados. Obligatorio para consultas paginadas.
MaxResultadosintNúmero máximo de resultados a recibir por página en búsquedas paginadas.
Salida
La salida es una secuencia con las identidades igual que el caso de búsqueda de identidades.
Errores
0Error interno
1No se encontró el grupo en el organismo
2No dispone de permiso para realizar la operación
[DEPRECATED] String[] obtenerIdentificadoresGrupoTrabajo(ConsultaGrupo)
Realiza una búsqueda sobre los grupos de trabajo. Este método se ha quedado obsoleto, se recomienda usar en su lugar obtenerIdentificadoresGruposTrabajoExt.
Parámetros (optativos)
IdentificadorIdentidadStringDocumento de identificación de la identidad de la que se consultan sus grupos de trabajo.
EsResponsableStringSi es “true” consulta los grupos de los que es responsable la identidad. En caso contrario, si es “false” devuelve los grupos de los que es simplemente miembro.
OrganismoList<String>Listado de organismo sobre el que se quiere realizar la búsqueda. Debe contener al menos un organismo
Salida
La salida es una secuencia con los identificadores de los grupos encontrados.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
[DEPRECATED] Grupo[] obtenerGruposTrabajo(ConsultaGrupo)
Realiza una búsqueda sobre los grupos de trabajo. Este método se ha quedado obsoleto, se recomienda usar en su lugar obtenerGruposTrabajoExt.
Parámetros
IdentificadorIdentidadStringDocumento de identificación de la identidad de la que se consultan sus grupos de trabajo.
EsResponsableStringSi es “true” consulta los grupos de los que es responsable la identidad. En caso contrario, si es “false” devuelve los grupos de los que es simplemente miembro.
OrganismoList<String>Listado de organismo sobre el que se quiere realizar la búsqueda. Debe contener al menos un organismo
Salida
La salida es una secuencia con los atributos de los grupos encontrados.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
Grupo[] obtenerGrupoTrabajo(ObtenerGrupoTrabajo mensaje)
Devuelve un mensaje con las propiedades del grupo que se indique.
Parámetros
IdentificadorStringIdentificador asignado al grupo de trabajo.
OrganismoStringOrganismo al que pertenece.
Salida
La salida contiene los atributos del grupo.
Errores
0Error interno
1No se encontró el grupo en el organismo
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
[DEPRECATED] void agregarMiembroAGrupoTrabajo(IdentidadGrupo)
Añade un nuevo miembro a un grupo. Este método se ha quedado obsoleto, se recomienda usar en su lugar agregarMiembroAGrupoTrabajoExt.
Parámetros
IdentificadorIdentidadStringDocumento de identificación de la identidad
IdentificadorGrupoStringIdentificador asignado al grupo.
OrganismoStringOrganismo al que pertenece.
Salida
No hay.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
3No encontró el grupo
5La identidad ya es miembro del grupo
6No se ha recibido algún parámetro obligatorio para realizar la operación
[DEPRECATED] void eliminarMiembroGrupoTrabajo(MensajeGrupo)
Elimina un miembro de un grupo existente a partir de su identificador NIF/NIE. Este método se ha quedado obsoleto, se recomienda usar en su lugar eliminarMiembroDeGrupoTrabajoExt.
Parámetros
IdentificadorIdentidadStringDocumento de identificación de la identidad
IdentificadorGrupoStringIdentificador asignado al grupo.
OrganismoStringOrganismo al que pertenece.
Salida
No hay.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
3No encontró el grupo para identidad
6No se ha recibido algún parámetro obligatorio para realizar la operación
 [DEPRECATED] boolean esMiembroGrupo(IdentidadGrupo)
Comprueba si una identidad pertenece a un grupo a partir del identificador NIF/NIE de la identidad. Este método se ha quedado obsoleto, se recomienda usar en su lugar esMiembroGrupoTrabajoExt.
Parámetros
IdentificadorIdentidadStringDocumento de identificación de la identidad
IdentificadorGrupoStringIdentificador asignado al grupo.
OrganismoStringOrganismo al que pertenece.
Salida
true si la identidad pertenece al grupo, false en caso contrario.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
String agregarUOOaGrupoTrabajo(AgregarUOOaGrupo)
Añade una UO a un grupo.
Parámetros
IdentificadorUOOStringIdentificador de la unidad operativa.
IdentificadorGrupoStringIdentificador asignado al grupo.
OrganismoStringOrganismo al que pertenece.
Salida
El mensaje de salida es una cadena con el código “OK”, indicando que la operación ha sido realizada
Errores
0Error interno
1No se encontró el grupo en el organismo
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
String eliminarUOOdeGrupoTrabajo(EliminarUOOdeGrupo)
Elimina una UO de un grupo.
Parámetros
IdentificadorUOOStringIdentificador de la unidad operativa.
IdentificadorGrupoStringIdentificador asignado al grupo.
OrganismoStringOrganismo al que pertenece.
Salida
El mensaje de salida es una cadena con el código “OK”, indicando que la operación ha sido realizada
Errores
0Error interno
1No se encontró el grupo en el organismo
2No dispone de permiso para realizar la operación
3No existe la uoo en el grupo
6No se ha recibido algún parámetro obligatorio para realizar la operación
void crearGrupoTrabajo(CrearGrupo)
Crea un nuevo grupo de trabajo.
Parámetros
IdGrupoStringIdentificador asignado al grupo
NombreStringOpcional. Rellena el atributo “description” de la entrada del grupo.
DescripcionStringOpcional. Rellena el atributo “ou” de la entrada del grupo.
CategoriaStringOpcional. Rellena el atributo “businessCategory” de la entrada del grupo.
MailStringOpcional. Asigna un correo al grupo.
AdministradorStringOpcional. Rellena el atributo “owner” de la entrada del grupo. Debe de recibir el numero de documento de una identidad.
OrganismoStringOrganismo al que pertenecerá el grupo
Salida
No hay.
Errores
0Error interno
1El administrador no es una identidad válida
2No dispone de permiso para realizar la operación
3El grupo ya existe
5Organismo no válido
6No se ha recibido algún parámetro obligatorio para realizar la operación
void actualizarGrupoTrabajo(ActualizarGrupo)
Crea un nuevo grupo de trabajo.
Parámetros
IdGrupoStringIdentificador asignado al grupo
NombreStringOpcional. Rellena el atributo “description” de la entrada del grupo.
DescripcionStringOpcional. Rellena el atributo “ou” de la entrada del grupo.
CategoriaStringOpcional. Rellena el atributo “businessCategory” de la entrada del grupo.
MailStringOpcional. Asigna un correo al grupo.
AdministradorStringOpcional. Rellena el atributo “owner” de la entrada del grupo. Debe de recibir el numero de documento de una identidad.
OrganismoStringOrganismo al que pertenecerá el grupo
Salida
No hay.
Errores
0Error interno
1No se encuentra el grupo en el organismo
2No dispone de permiso para realizar la operación
3El administrador no es una identidad válida
6No se ha recibido algún parámetro obligatorio para realizar la operación
void eliminarGrupoTrabajo(String)
Elimina un grupo de trabajo.
Parámetros
IdentificadorStringIdentificador asignado al grupo de trabajo.
Salida
No hay.
Errores
0Error interno
1No se encontró el grupo en el organismo
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
Grupo[] buscarGruposTrabajo(BuscarGruposTrabajo)
Realiza una búsqueda sobre los grupos de trabajo.
Parámetros (optativos)
NombreStringFiltra por identificador del grupo
DescripcionStringFiltra por campo “description” del grupo.
OrganismoStringFiltro por organismos.
Salida
Secuencia con los atributos de los grupos encontrados.
Errores
0Error interno
2No dispone de permiso para realizar la operación
3No existen grupos para este organismo
String [] obtenerIdentificadoresGruposTrabajoExt(ConsultaGrupo)
Realiza una búsqueda sobre los grupos de trabajo.
Parámetros (optativos)
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador.
esResponsableStringObligatorio. Si es “true” consulta los grupos de los que es responsable la identidad. En caso contrario, si es “false” devuelve los grupos de los que es simplemente miembro.
organismoListObligatorio, no vacío. Listado de organismo sobre el que se quiere realizar la búsqueda.
Salida
Secuencia con los identificadores de los grupos encontrados
Errores
0Error interno
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
Grupo [] obtenerGruposTrabajoExt(ConsultaGrupo)
Realiza una búsqueda sobre los grupos de trabajo.
Parámetros (optativos)
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador.
esResponsableStringObligatorio. Si es “true” consulta los grupos de los que es responsable la identidad. En caso contrario, si es “false” devuelve los grupos de los que es simplemente miembro.
organismoListObligatorio, no vacío. Listado de organismo sobre el que se quiere realizar la búsqueda.
Salida
Secuencia con los atributos de los grupos encontrados
Errores
0
Error interno
2No dispone de permiso para realizar la operación
6No se ha recibido algún parámetro obligatorio para realizar la operación
String agregarMiembroAGrupoTrabajoExt(AgregarMiembroAGrupoTrabajoExt)
Realiza una búsqueda sobre los grupos de trabajo.
Parámetros (optativos)
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador.
identificadorGrupoStringObligatorio. Identificador asignado al grupo.
organismoStringObligatorio. Organismo al que pertenece.
Salida
No hay mensaje de salida. Los posibles errores se envían en un segmento SOAP Fault.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
3No encontró el grupo
5La identidad ya es miembro del grupo
6No se ha recibido algún parámetro obligatorio para realizar la operación
void eliminarMiembroDeGrupoTrabajoExt(EliminarMiembroDeGrupoTrabajoExt)
Elimina un miembro de un grupo existente.
Parámetros (optativos)
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador.
identificadorGrupoStringObligatorio. Identificador asignado al grupo.
organismoStringObligatorio. Organismo al que pertenece.
Salida
No hay mensaje de salida. Los posibles errores se envían en un segmento SOAP Fault.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
3No encontró el grupo


boolean esMiembroGrupoTrabajoExt(IdentidadGrupo)
Comprueba si una identidad pertenece a un grupo.
Parámetros (optativos)
tipoIdentificadorStringObligatorio. Código del identificador.
valorIdentificadorStringObligatorio. Valor del identificador.
identificadorGrupoStringObligatorio. Identificador asignado al grupo.
organismoStringObligatorio. Organismo al que pertenece.
esResponsableBooleanObligatorio. Indica si la entidad es responsable o miembro del grupo
Salida
Parámetro lógico con valor cierto si la identidad pertenece al grupo.
Errores
0Error interno
1No se encontró la identidad
2No dispone de permiso para realizar la operación
3No se encontró el grupo
6No se ha recibido algún parámetro obligatorio para realizar la operación

Métodos de Organismo

Aquí se incluye el método de consulta sobre organismos.

Organismo[] obtenerOrganismos(ObtenerOrganismos)
Devuelve el listado con todos los organismos.
Parámetros
Ninguno  
Salida
Secuencia con los organismos encontrados.
Errores
0
Error interno
2No dispone de permiso para realizar la operación

Métodos de Aplicación

Las aplicaciones pueden leer y escribir atributos propios o comunes a todas las aplicaciones. Los atributos pueden estar tanto en la rama “común”, para las aplicaciones horizontales, como en la rama de cada organismo. Estos atributos pueden ser propios para cada aplicación o bien comunes a todas las aplicaciones que tengan los permisos necesarios.

Los atributos constarán de un par nombre-valor. Además del nombre del atributo en el mensaje tanto de escritura como de lectura hay que especificar si es un parámetro común o propio de la aplicación.

void escribirAtributo(MensajeAtributo)
Con este método las aplicaciones escriben atributos en el directorio.
Parámetros
NombreStringNombre que recibirá la entrada donde se incluirá el atributo.
ValorStringValor asignado al atributo.
AplicacionStringNombre de la aplicación.
esGlobalBooleanBoolean que indica si se trata de un parámetro de una aplicación concreta (“false”) o compartido por todas las aplicaciones de un organismo (“true”)
OrganismoStringOrganismo al que pertenece la aplicación.
Salida
No hay.
Errores
0Error interno
1No se encontró la aplicación
2No dispone de permiso para realizar la operación
6Faltan parámetros obligatorios de la aplicación
9No existe la aplicación
10No se ha enviado el nombre de la aplicación
ResultadoAtributo leerAtributo(MensajeAtributo)
Obtiene el valor de un atributo.
Parámetros
NombreStringNombre que recibirá la entrada donde se incluirá el atributo.
AplicacionStringNombre de la aplicación.
esGlobalBooleanBoolean que indica si se trata de un parámetro de una aplicación concreta (“false”) o compartido por todas las aplicaciones de un organismo (“true”)
OrganismoStringOrganismo al que pertenece la aplicación.
Salida
Cadena con el valor del atributo
Errores
0
Error interno
1No se encontró la aplicación
2No dispone de permiso para realizar la operación
6Faltan parámetros obligatorios de la aplicación
9No existe la aplicación
10No se ha enviado el nombre de la aplicación

Método de Administración

String isAlive()
El método devuelve la cadena “OK” si el Servicio Web esta funcionando correctamente
Parámetros
No hay.  
Salida
Cadena con el valor del atributo
Errores
0
Error interno
4Error de conexión con OID

Apéndice 1: Paginación

Todos los métodos que devuelvan lista serán susceptibles de ser paginados. En estos casos cuando el cliente realice la petición al Servicio Web indicará un número máximo de resultados, tamaño de la página, y un “ticket”. El ticket consiste en una cadena que hace referencia a una petición anterior. En caso de que sea la primera petición este ticket tendrá un valor nulo.

Cuando el sistema realice la operación y devuelva el resultado también devolverá un nuevo ticket. Este nuevo ticket deberá ser enviado para obtener los resultados de la siguiente página. De esta forma si realizamos una petición indicando que se obtengan los 100 primeros resultados de una lista para obtener los 100 siguientes debemos realizar otra petición pasando como parámetro el ticket anterior.

Apéndice 2: Consulta de Identidades

Muchos de los métodos de consulta de identidad permiten utilizar cualquiera de los identificadores de la identidad para realizar la consulta. Estos métodos reciben dos parámetros, uno con el tipo del identificador que se va a usar y otro con el valor de este.

El parámetro tipoIdentificador debe ser una de los siguientes valores:

ValorDescripción
GUIAIdentificador interno de GUIA
NIFIdentificador NIE/NIF de la identidad
UIDIdentificador uid de la identidad

El valor se corresponde con el valor del identificador por el cual queremos hacer la consulta. Por ejemplo para el método consultaIdentidadExt serían validas las siguientes llamadas:

  • Identidad identidad = consultaIdentidadExt(“GUIA”, “100300007”);
  • Identidad identidad = consultaIdentidadExt(“NIF”, “11111111B”);
  • Identidad identidad = consultaIdentidadExt(“UID”, “jose.garcia”);