Logo DAC

Está en:

API de acceso a datos

Este servicio se pone a disposición de los reutilizadores y está enfocado al desarrollo de aplicaciones basadas en los datos disponibles actualmente en el portal.

La API se compone de tres servicios mediante los que será posible:

  • Obtener los metadatos de los conjuntos de datos y sus recursos.
  • Obtener los metadatos de los recursos.
  • Obtener los datos (registros) de los recursos.
Todos los servicios tienen una url básica común que será:
A esta url básica habrá que añadirle el nombre del servicio y los parámetros especificados para cada uno de ellos para obtener la información. Las respuestas de los servicios se obtienen en formato JSON.
 
Identificadores
 
Todos los servicios tienen como parámetro de obligatorio el identificador del dataset (id) o el identificador del recurso (resource_id). Los identificadores son cadenas alfanuméricas que identifican de forma unívoca a un conjunto de datos o un recurso en el portal. Obtener estos identificadores para poder empezar a trabajar con un conjunto de datos y sus recursos es sencillo:
 
1. Visitando la página del catálogo accedemos a cualquiera de los conjuntos de datos. Si nos fijamos en la url, el identificador del conjunto de datos es la parte final de ésta. Por ejemplo, para el conjunto Enseñanzas, materias y estudios, cuya url es http://opendata.gobiernodecanarias.org/opendata/catalogo/ensenanzas-materias-y-estudios, es decir, se identifica el dataset como ensenanzas-materias-y-estudios.
 
2. Para obtener los identificadores de los recursos del conjunto de datos anterior, debemos utilizar el servicio get_dataset de la API, lo que nos devolverá los metadatos del conjunto de datos, así como de sus recursos, entre ellos, sus identificadores.
 
Limitaciones de la API

En general, se puede utilizar los servicios de la API sobre cualquier conjunto de datos o recurso, a excepción del servicio get_resource_records, que sólo está disponible para los recursos en formato CSV. No obstante, para recursos cuyo formato sea distinto de CSV se podrá utilizar el servicio de obtención de metadatos get_resource.
 
A continuación se describen los servicios disponibles actualmente: descripción, parámetros de entrada y respuesta.

 

1. GET_DATASET

URL del servicio: [URL_BASE]/get_dataset.

Descripción: Devuelve los metadatos de un conjunto de datos, incluyendo los de sus recursos: autor, email del autor, fecha de los datos, frecuencia de actualización, fuente, categorías, identificador, idioma, licencia, mantenedor, email del mantenedor, fecha de creación del metadato, fecha de actualización del metadato, nombre, descripción, descripción en html, número de recursos, etiquetas, número de etiquetas, organismo publicador, coordenadas geográficas, título, url del conjunto de datos y web de referencia.

Por cada recurso: descripción, fecha de creación, formato, identificador, url de descarga y nombre.

Parámetros:

  • id: Obligatorio. Identificador o nombre del conjunto de datos.
  • prettyPrint: Opcional. Admite los valores true o false. Si es true, devuelve el JSON resultante formateado, en caso contrario, lo devuelve comprimido. Para mayor rendimiento en las aplicaciones se recomienda no enviar este parámetro o mandarlo a false. En fase de depuración, puede ser útil mandarlo a true.

Resultado: El resultado de la petición se presenta en formato JSON:

  • success: true o false. Indica si la petición se ha realizado correctamente o no.
  • result: si success es true, result contendrá la respuesta.
  • error: si success es false, error contendrá información sobre el error que se haya producido.

 

2. GET_RESOURCE

URL del servicio: [URL_BASE]/get_resource.

Descripción: Devuelve los metadatos de un recurso: descripción, fecha de creación, formato, identificador, url de descarga y nombre.

Parámetros:

  • resource_id: Obligatorio. Identificador del recurso.
  • prettyPrint: Opcional. Admite los valores true o false. Si es true, devuelve el JSON resultante formateado, en caso contrario, lo devuelve comprimido. Para mayor rendimiento en las aplicaciones se recomienda no enviar este parámetro o mandarlo a false. En fase de depuración, puede ser útil mandarlo a true. 

Resultado: El resultado de la petición se presenta en formato JSON:

  • success: true o false. Indica si la petición se ha realizado correctamente o no.
  • result: si success es true, result contendrá la respuesta.
  • error: si success es false, error contendrá información sobre el error que se haya producido.

 

3. GET_RESOURCE_RECORDS

URL del servicio: [URL_BASE]/get_resource_records.

Descripción: Devuelve los registros de un recurso. Este servicio es compatible con los recursos en formato CSV. El resultado contendrá los siguientes campos:

  • resourceId: Identificador del recurso.
  • next: URL relativa para obtener los siguientes registros, en base a la petición anterior que se haya hecho.
  • prev: URL relativa para obtener los registros anteriores, en base a la petición anterior que se haya hecho.
  • start: URL relativa para obtener los primeros registros, en base a la petición anterior que se haya realizado.
  • fields: contiene el nombre de los campos del csv.
  • records: contiene los datos en el formato nombre_campo : valor

Parámetros:

  • resource_id: Obligatorio. Identificador del recurso.
  • queryString: Opcional. Criterio de búsqueda. Devolverá registros que coincidan con el texto buscado.
  • offset: Opcional. En combinación con el parámetro limit se puede usar para paginar resultados. Por ejemplo, si un csv tiene 500 registros con limit=20, offset=0 devolverá los 20 primeros, limit=20 y offset=20 devolverá del 21 al 40, y así sucesivamente.
  • limit: Opcional. Número máximo de registros a devolver.
  • sort: Opcional. Criterios de ordenación. Campos del para ordenar los resultados, separados por comas. Campo1, campo2 desc, etc.
  • filters: Opcional. Permite filtras sobre los registros del recurso. Se puede aplicar uno o varios filtros. Cada filtro se corresponderá con un campo del registro. Este parámetro se aplica encerrado entre llaves de la siguiente forma: filters={"campo":"valor"}; para aplicar varios filtros se separan por comas de forma: filters={"campo1":"valor","campo2":"valor"}.
  • prettyPrint: Opcional. Admite los valores true o false. Si es true, devuelve el JSON resultante formateado, en caso contrario, lo devuelve comprimido. Para mayor rendimiento en las aplicaciones se recomienda no enviar este parámetro o mandarlo a false. En fase de depuración, puede ser útil mandarlo a true.

Resultado: El resultado de la petición se presenta en formato JSON:

  • success: true o false. Indica si la petición se ha realizado correctamente o no.
  • result: si success es true, result contendrá la respuesta.
  • error: si success es false, error contendrá información sobre el error que se haya producido.
 

© Gobierno de Canarias