Utilizar la API

Una interfaz de programación de aplicaciones (API) es una interfaz diseñada para permitir a los programas intercambiar datos. La API de OpenDataSoft proporciona una manera unificada de acceder a los datos insertados en la plataforma, independientemente de su origen o formato, al tiempo que se aplican las reglas de seguridad definidas por el propietario de los datos.

Toda la plataforma OpenDataSoft se basa exclusivamente en estas mismas interfaces API para acceder a los datos. Estas son usadas intensamente por la biblioteca de widgets, que son tan solo una capa de presentación de los datos facilitados por las API.

Estas API permiten buscar conjuntos de datos, buscar datos, calcular análisis, realizar agregaciones geográficas y otras muchas tareas.

Para acceder a la documentación de la API de desarrollador, haga clic en los vínculos siguientes:

Conceptos clave

Todas las API dan acceso a los mismos datos, pero de formas distintas. Es muy importante conocer la naturaleza de estos datos antes de explorar toda la especificación de cada una de las API.

Todo lo que incluye la plataforma está relacionado a través de una estructura de árbol. Esto significa que OpenDataSoft puede considerarse como tal:

  • La plataforma OpenDataSoft es una red de portales OpenDataSoft.

  • Un portal proporciona un catálogo de todos sus conjuntos de datos.

  • Cada uno de los conjuntos de datos está definido por un diccionario de metadatos, un esquema de datos (que especifica los nombres y tipos de campos) y una colección de registros.

  • Cada uno de los registros suministra valores para cada uno de los campos del conjunto de datos.

Obviamente hay muchos más tipos de datos en la plataforma, pero solo son relevantes en contextos muy específicos.

La plataforma OpenDataSoft proporciona su propia API (la API V1 y la API V2 de ODS) y algunas implementaciones de la API estándar como ODATA, WFS o CSW.

API de ODS

Esta API es la empleada internamente por la plataforma y los widgets OpenDataSoft. Si desea desarrollar su propia aplicación, también es la mejor elección.

Diferencias entre las API de búsqueda V1 y V2

Nota

Esta API actualmente está en desarrollo y pronto estará disponible.

A continuación se muestran las principales diferencias y los cambios clave entre la API V1 y la API V2.

  • La API V2 introduce una mejor implementación de los principios REST. Cada uno de los puntos de entrada de la API suministra vínculos para navegar fácilmente entre los recursos vinculados (HATEOAS).

  • Esta API propone un lenguaje de consulta más completo, con nuevas funciones y expresiones aritméticas.

  • En cambio, los filtros especiales (filtros geográficos o de facetas) se han trasladado al lenguaje de consulta. Por ejemplo, geofilter.distance='42,1,100' se ha sustituido por q=distance(geo_field,geom'Point(42 1)',100).

  • La API de agregación (antes, API de análisis) incorpora un nuevo lenguaje tipo SQL y está disponible en el catálogo además de los registros de conjuntos de datos.

  • Los exportadores tienen su propio punto de entrada bajo /api/catalog/exports y /api/catalog/datasets/<dataset_id>/exports

  • La búsqueda de navegación (antes, búsqueda de facetas) y la búsqueda estándar se han separado totalmente.

ODATA, WFS y CSW

Estas 3 siglas hacen referencia a otros estándares que implementa la plataforma. Si no está familiarizado con estos estándares, quédese con la API de ODS dado que proporciona el acceso más amplio a los datos.

ODATA

ODATA es un estándar de interfaces API REST que proporciona un lenguaje común para realizar solicitudes en las API. El inconveniente del paradigma genérico de esta norma es su mayor complejidad en comparación con las API REST personalizadas tradicionales.

OpenDataSoft implementa esta norma para las operaciones simples (buscar conjuntos de datos y registros), pero las más complejas (como análisis, agregaciones, cálculos geográficos...) solo están disponibles a través de las API V1 y V2.

WFS y CSW

Ambos son estándares que se centran en los datos geográficos y como tal son especialmente relevantes si la plataforma debe interactuar con otro software GIS.