Datos Abiertos de Zaragoza

Ayuda para utilizar la API Zaragoza

Tabla de Contenido

Descripción del servicio

Servicio pensado para reutilizadores que pone a su disposición información sobre las operaciones que puede realizar sobre unos determinados conjuntos de datos de Zaragoza.

Operaciones:
  • Descripción sobre la operación
  • Parámetros a utilizar
  • Formatos de respuesta
  • Pruebas Se pueden ejecutar operaciones mostrándose el resultado.

Darte de alta como reutilizador en API Zaragoza

El primer paso que te recomendamos hacer para utilizar nuestros conjuntos de datos, es darte de alta en el servicio. Este alta es opcional pero tiene una serie de ventajas que se describen a continuación:

  • Dar de alta las urls que estás utilizando (ya sea haciendo scrapping o los conjuntos de datos abiertos que utilizas) para que nos podamos poner en contacto contigo antes de realizar modificaciones y conozcamos sus implicaciones.
  • Dar de alta las aplicaciones que desarrollas utilizando nuestros datos. Aparecerán publicadas en http://www.zaragoza.es/ciudad/risp/buscar_Aplicacion.

Servicio para reutilizadores en API Zaragoza

Registro en el servicio

Accediendo a Tus Aplicaciones entrarás en el formulario de acceso a tú perfil de reutilizador, con la posibilidad de darte de alta como nuevo reutilizador.

Registro en API Zaragoza como reutilizador
Perfil de reutilizador

En tú zona personal puedes dar de altas las urls que estás utilizando, haciendo click en [1] Añadir URI.

También puedes dar de alta nuevas aplicaciones, modificar tus datos de usuario, así como obtener tú apikey en caso de que la necesites haciendo click en [2] Modificar datos.

Zona Personal
Zona personal servicio de reutilizadores API Zaragoza
Añadir URI
Zona personal servicio de reutilizadores API Zaragoza
Añadir aplicación
Zona personal servicio de reutilizadores API Zaragoza
Modificar datos
Zona personal servicio de reutilizadores API Zaragoza

API Zaragoza

A través de la interfaz que proporciona Swagger se pueden realizar consultas de prueba de los diferentes conjuntos de datos sobre nuestra API convirtiendose en un servicio interactivo para el reutilizador.

¿Qué es Swagger?

Swagger es una herramienta web para describir, producir, consumir y visualizar servicios REST.
El objetivo de Swagger es que la documentación del sistema se actualice conforme se actualice el servicio, de modo que la documentación de los métodos, parámetros y modelo esté integrada en el código del servicio permitiendo que las APIs estén siempre sincronizadas.

Dicha especificación se compone de dos partes:

  • Resource Listing: devuelve un listado con todas las APIs a documentar/probar.
  • API Declaration: devuelve la información relativa a un API, como sus operaciones o el modelo de datos.

Con este servicio se pretende ofrecer interacción directa con nuestra API y los diferentes conjuntos de datos a través de una interfaz amigable.

Acceso al API

Formatos de respuesta

Los conjuntos de datos públicados en API Zaragoza pueden obtenerse en diferentes formatos.

Si se accede a un recurso de API a través del navegador y este tiene asociada una visualización en HTML se redirigirá a dicha visualización.

Algunos conjuntos de datos todavía no soportan todos los formatos.

Hay dos opciones para indicar el tipo de respuesta que se desea:

  • Mediante el parametro 'Accept' en los headers de la petición
    Ejemplo: Accept:application/rdf+xml
  • Indicando el formato mediante su extensión en la petición:
    Ejemplo: http://www.zaragoza.es/api/recurso/turismo/restaurante.rdf
Formato Header 'Accept' Extensión de formato
JSON application/json .json
GeoJSON application/geo+json .geojson
XML application/xml .xml
CSV text/csv .csv
JSONLD application/ld+json .JSONLD
RDF application/rdf+xml .rdf
Turtle application/x-turtle .turtle
N3 application/rdf+n3 .n3

Párametros API

La API ofrece una serie de párametros para personalizar la petición obteniendo mejores resultados:

Parámetro Descripción
fl Listado de atributos separados por comas que se desea obtener en la respuesta.
Para más información consulta el apartado sobre Atributos normalizados en los conjuntos de datos o accede directamente al conjunto de datos que quieres revisar desde el apartado del Catálogo de conjuntos de datos.
srsname Sistema de referencia preferido para obtener las coordenadas de geolocalización:
  • utm30 (por defecto)
  • wsg84 (sistema utilizado por Google)
  • etrs89
start Posicion del primer registro que se obtendra a partir del total de registros totalCount de la petición.
rows Número de filas/registros que se obtendrán de la petición.
sort Ordenación ascendente asc o descentente desc de los registros obtenidos a partir del atributo dado previamente
q Consulta mediantes FIQL para permitir filtros y condiciones en las consultas utilizando una sintaxis con URIs amigables.
point Punto (coordenadas) a partir del cual se desea obtener los regitros de forma circunferencial a dicho punto mediante una distancia dada. Por defecto 500 metros.
distance Distancia (en metros) a la que se encuentran los resultados obtenidos a través de paramétro point. Por defecto 500 metros.
Ejemplo de petición con parámetros API

Consulta: Nombre y teléfono de los 3 restaurantes de un total de 5 restaurantes, más cercanos a las coordenadas wsg84 de la Basílica de Ntra. Sra. del Pilar en un radio de 250 metros en formato json y ordenados de forma descendente por el nombre.

GET: ttp://www.zaragoza.es/api/recurso/turismo/restaurante.json?fl=title,tel&srsname=wgs84&start=3&rows=5&sort=title%20desc&q=title==A*&point=-0.878516,41.656772&distance=250
Puedes consultar otros ejemplos desde nuestro repositorio de GitHub.

Códigos HTTP de Respuesta

HTTP Status Code Reason
200 Operación realizada correctamente
304 Registro no modificado desde la última petición, soporte ETAG/If-None-Match y Last_Modified/If-Modified-Since
404 En la respuesta se obtiene una descripción del error
400 En la respuesta se obtiene una descripción del error
500 Error en la petición

Catálogo de conjuntos de datos

A continuación se describen los diferentes conjuntos de datos publicados a fecha de Marzo 2015 consultando al conjunto de datos del catálogo de datos a través de la propia API:

GET: http://www.zaragoza.es/api/catalogo.json

Ejemplos de peticiones

Vistos los formatos soportados, los diferentes conjuntos de datos, códigos de respuesta y atributos normalizados pasamos a visualizar un par de ejemplos en los que se realiza una petición de listado de registros y otra del detalle de uno concreto con sus respuestas. En nuestro repositorio de github zaragoza-sedeelectronica se pueden encontrar ejemplos más complejos tanto de peticiones como de ejemplos HTML.

Ejemplo de listado

Consulta: Listado de 100 monumentos con las propiedades: title, horario y geometry (coordenadas en utm30) en JSON y XML.

JSON
GET: http://www.zaragoza.es/api/recurso/turismo/monumento.json?rows=100&fl=title,horario,geometry
{
    "totalCount": 175,
    "start": 0,
    "rows": 100,
    "result": [{
            "title": "Museo del Foro de Caesaraugusta",
            "horario": "Cerrado hasta nuevo aviso. [...]",
            "geometry": {
                "type": "Point",
                "coordinates": [676934.75, 4613880.67]
            }
        }, {
            "title": "Centro de Historias de Zaragoza. Antiguo Convento de San Agustín",
            "horario": "Martes a sábado de 10 a 14h y 17 a 21h [...]",
            "geometry": {
                "type": "Point",
                "coordinates": [677408.53, 4613410.17]
            }
        },
        ...
    ]
}					
XML
GET: http://www.zaragoza.es/api/recurso/turismo/monumento.xml?rows=100&fl=title,horario,geometry
<resultado>
    <totalCount>175</totalCount>
    <start>0</start>
    <rows>100</rows>
    <result>
        <monumento>
            <title>Museo del Foro de Caesaraugusta</title>
            <horario>
                Cerrado hasta nuevo aviso. [...]
            </horario>
            <geometry>
                <type>Point</type>
                <coordinates>676934.75,4613880.67</coordinates>
            </geometry>
        </monumento>
        <monumento>
            <title>
                Centro de Historias de Zaragoza. Antiguo Convento de San Agustín
            </title>
            <horario>
                Martes a sábado de 10 a 14h y 17 a 21h [...]
            </horario>
            <geometry>
                <type>Point</type>
                <coordinates>677408.53,4613410.17</coordinates>
            </geometry>
        </monumento>
    </result>
</resultado>
					
Ejemplo de detalle

Consulta: Detalle del monumento con identificador 2: Museo del Foro de Caesaraugusta en JSON y XML

JSON
GET: http://www.zaragoza.es/api/recurso/turismo/monumento/2.json
{
    "id": 2,
    "title": "Museo del Foro de Caesaraugusta",
    "description": "El Foro es el centro neurálgico de la vida en una ciudad romana: es el principal lugar de reunión donde se desarrolla la vida político-administrativa, económica y religiosa. El recinto forense se organiza a partir de un gran espacio abierto, rodeado de uno o varios pórticos circundantes, en torno al cual se distribuyen los edificios más significativos: la Curia, dedicada a usos políticos y administrativos; la Basílica, donde se resuelven asuntos jurídicos; y el Templo principal de la ciudad. Junto a ellos están las tabernas, locales dedicados a usos comerciales, y seguramente habría otros edificios relacionados con la administración (archivos, acuñación de moneda, etc.). Este conjunto monumental se completa con diversos elementos ornamentales (aras para sacrificios, estatuas honoríficas, arcos de triunfo, etc.) de los que en el caso de Caesaraugusta conocemos algunos a través de su representación en las monedas de la ciudad.",
    "estilo": "romano",
    "address": "Plaza de la Seo, 2",
    "horario": "Cerrado hasta el domingo 15 de marzo.\r\n\r\nMartes a sábado de 10 a 14h y 17 a 21h\r\nDomingos 10 a 14.30h \r\nLunes cerrado\r\n\r\nMedia hora antes del cierre se interrumpe la entrada.",
    ...
}
XML
GET: http://www.zaragoza.es/api/recurso/turismo/monumento/2.xml
<monumento>
    <id>2</id>
    <title>Museo del Foro de Caesaraugusta</title>
    <description>
        El Foro es el centro neurálgico de la vida en una ciudad romana: es el principal lugar de reunión donde se desarrolla la vida político-administrativa, económica y religiosa. El recinto forense se organiza a partir de un gran espacio abierto, rodeado de uno o varios pórticos circundantes, en torno al cual se distribuyen los edificios más significativos: la Curia, dedicada a usos políticos y administrativos; la Basílica, donde se resuelven asuntos jurídicos; y el Templo principal de la ciudad. Junto a ellos están las tabernas, locales dedicados a usos comerciales, y seguramente habría otros edificios relacionados con la administración (archivos, acuñación de moneda, etc.). Este conjunto monumental se completa con diversos elementos ornamentales (aras para sacrificios, estatuas honoríficas, arcos de triunfo, etc.) de los que en el caso de Caesaraugusta conocemos algunos a través de su representación en las monedas de la ciudad.
    </description>
    <estilo>romano</estilo>
    <address>Plaza de la Seo, 2</address>
    <horario>
        Cerrado hasta nuevo aviso. Martes a sábado de 10 a 14h y 17 a 21h Domingos 10 a 14.30h Lunes cerrado Media hora antes del cierre se interrumpe la entrada.
    </horario>
</monumento>

Documentación adicional

Para algunos conjuntos de datos se establece un documento de ayuda individual con el objetivo de detallar las operaciones y métodos que se encuentran disponibles:

Enlaces de interés