APIs de datos abiertos
Descubre que son las APIs, en que nos ayudan y como las podemos aprovechar para mejorar el acceso a los datos abiertos.
Definición de API
El término API es una abreviatura de Application Programming Interfaces, que en español significa interfaz de programación de aplicaciones. Se trata de un conjunto de definiciones y protocolos que se utiliza para desarrollar e integrar el software de las aplicaciones, permitiendo la comunicación entre dos aplicaciones de software a través de un conjunto de reglas.
Son el medio idóneo para la publicación de datos abiertos dinámicos y en tiempo real.
Para qué sirve una API
Una de las principales funciones de las APIs es poder facilitarles el trabajo a los desarrolladores y ahorrarles tiempo.
Con ello, no será necesario tener que reinventar un código con cada servicio que se crea, ya que podrán utilizar piezas o funciones que otros ya han creado.
En este sentido, muchos portales de datos abiertos de nuestro país ya cuentan con sus propias APIs para facilitar el acceso a datos y metadatos.
Arquitecturas APIs
Ahora mismo, cuando alguien quiere construir una API, generalmente usa REST, pero hay otros enfoques. Principalmente se utilizan:
- REST
- RPC
- SOAP/WSDL
API REST
REST viene de, Representational State Transfe. Es un conjunto de principios arquitectónicos que se ajusta a las necesidades de las aplicaciones móviles y los servicios web ligeros. Dado que se trata de un conjunto de pautas, la implementación de las recomendaciones depende de los desarrolladores.
SOAP
SOAP es un protocolo estándar que se creó originalmente para posibilitar la comunicación entre las aplicaciones que se diseñaban con diferentes lenguajes y en distintas plataformas. Como es un protocolo, impone reglas integradas que aumentan la complejidad y la sobrecarga, lo cual puede retrasar el tiempo que tardan las páginas en cargarse. Sin embargo, estos estándares también ofrecen normas integradas que pueden ser ideales para el sector empresarial.
API RPC
RPC (Remote Procedure Call) es un protocolo que expone métodos para manipular datos a través del protocolo HTTP. Los endpoints pueden contener verbos de la operación que realizan. El tipo de datos que se usa puede ser XML (XML-RPC) o JSON (JSON–RPC).
En RPC, sólo usamos GET y POST; GET para obtener información y POST para todo lo demás.
Ventajas de las APIS para los desarrolladores
Los beneficios de las API son múltiples:
- Automatización: las APIs permiten que sean los equipos informáticos y no las personas las que manejen el trabajo. A través de las APIs las agencias pueden actualizar los flujos de trabajo para que se puedan realizar en menos tiempo a la vez que sean más productivos.
- Aplicación: al habilitar el acceso de las APIs a los componentes de las apps se proporciona flexibilidad en la entrega de servicios e información.
- Más alcance: con una API se puede crear una capa de aplicación que se puede utilizar para la distribución de información y servicios a nuevas audiencias que se pueden personalizar para crear experiencias de usuario a la carta.
- Nuevos datos disponibles: una API permite que toda la información que se genera en los gobiernos esté al alcance de toda la ciudadanía, y no solo de unos pocos.
- Eficiencia: cuando se proporciona acceso a una API, el contenido que se genera se puede publicar automáticamente y está disponible para todos los canales. Permite que se comparta y se distribuya más fácilmente.
- Integración: las APIs permiten que los contenidos se puedan embeber desde cualquier sitio o aplicación con mayor facilidad.
- Adaptación: las necesidades cambian con el tiempo y las APIs ayudan a anticiparse a los cambios.
¿Qué se necesita para usar una API?
Es necesario conocer sus mecanismos de uso a través de la documentación, donde se indican los detalles técnicos:
- Forma de acceso y autenticación.
- Operaciones disponibles y los parámetros permitidos.
- Respuestas a obtener.
- Ejemplos de uso.
Dos ejemplos de APIs de la Junta de Andalucía
MADEJA
El API de Servicios Web es el que proporciona el acceso hacia el Directorio. La aplicación del Catálogo de Software dispone de una API de conexión para comunicarse con otras herramientas de inventario como “Marisma”. La integración de la aplicación Marisma con el Catálogo ya ha sido realizada, pero si desea utilizar otra aplicación para comunicarse con el Catálogo puede hacerlo programando una interfaz de comunicación con la API.
API: http://madeja.i-administracion.junta-andalucia.es/servicios/madeja/contenido/recurso/3-0
MAPEA
API visualizador Geográfico Junta de Andalucía. API para la construcción de visualizadores de mapas, que nace en la Junta de Andalucía como alternativa open source para homogeneizar tecnológicamente los visualizadores, con énfasis en la retrocompatibilidad y simplicidad de uso.
Tecnologías HTML5, CSS, javascript, Open Layers, responsive.