====== API del servicio web ======
===== Ruta del servicio =====
URI base: http://xgap.unicen.edu.ar/apps-php/localizacion/api
===== Acceso =====
Por el momento, la autenticación y autorización no están definidas, por lo que no tiene restricciones de acceso.
===== Consumo del servicio =====
/recurso[?{parametro1}={valor1}[&{parametro2}={valor2}&...]]
Se pueden combinar varios parámetros para filtrar el resultado por conjunción.
Un **{parámentro}** puede ser el nombre de un atributo del recurso o un parámetro de control.\\
Los parámetros de control son todos los parámetros que no son atributos:
* **q** := utlizado para búsqueda full-text, busca en todos los atributos (ocultos y visibles) del registro.\\ Valor predeterminado: no definido.
* **fields** := selecciona los atributos a mostrar, evita materializar atributos en el resultado.\\ Valor predeterminado: todos los campos.
* **sort** := ordenamiento ascendente o descendente del resultado mediante una lista de atributos.\\ Valor predeterminado: no definido.
* **offset** := desplazamiento en el resultado, en general se utiliza con implementaciones Ajax para paginación.\\ Valor predeterminado: sin desplazamiento.
* **limit** := límite de resultados, generalmente utilizado en conjunto con offset.\\ Valor predeterminado: ilimitado.
Un **{valor}** es el valor asignado al parámetro.
===== Resultado =====
Los datos devueltos por el servidor están codificados en formato JSON UTF-8. El esquema simplificado es el siguiente:
[
"localidad": {
"type": "string"
},
"sede": {
"type": "string"
},
"facultad": {
"type": "string"
},
"domicilio": {
"type": "string"
},
"dependencia": {
"type": "string"
},
"linea_telefono": {
"type": "string"
},
"cabecera": {
"type": "string"
},
"numero_interno": {
"type": "string"
},
"descripcion": {
"type": "string"
},
"sector": {
"type": "string"
},
"descripcion_construccion": {
"type": "string"
},
"descripcion_unidad_academica": {
"type": "string"
},
"latitud": {
"type": "number"
},
"longitud": {
"type": "number"
}
]
===== Ejemplos =====
==== Todos los teléfonos ====
/api/telefonos
el resultado son todos los teléfonos de la institución.
==== Búsqueda por atributos ====
Si se requiere filtrar el resultado por algún/os atributos/s en particular, el mismo deberá ser pasado como parámetro.
/api/telefonos?facultad=exactas
\\
el resultado serán todos los teléfonos de la facultad de exactas.
==== Combinación de parámetros (atributos y de control) ====
/api/telefonos?q=juan perez&localidad=tandil&facultad=exactas&offset=60&limit=20
\\
el resultado será la cuarta página de la búsqueda de "Juan Perez", que pertenezca a la ciudad de Tandil y a la facultad de Exactas.
/api/telefonos?fields=localidad,sector,descripcion&facultad=exactas&sort=-localidad,descripcion
\\
el resultado será similar a la siguiente consulta:
SELECT localidad, sector, descripcion
FROM Telefonos
WHERE facultad = 'exactas'
ORDER BY localidad DESC, descripcion ASC
===== Recursos =====
==== /telefonos ====
Teléfonos de la institución; incluye líneas externas, internas y ubicación de las mismas.
==== /puestos ====
Ubicación de los puestos de autoconsulta.