API

Conecta Software
3 lectura mínima

API, definición

API proviene de las siglas de Interfaz de Programación de Aplicaciones (application programming interface) que hace referencia a una capa de abstracción a través de la cual, los desarrolladores de software se valen para el desarrollo de otras aplicaciones.

 

Tipos de APIs

  • APIs del sistema operativo, que ofrecen a los desarrolladores funcionalidades propias del sistema operativo. Un ejemplo sería un programa que apagara el ordenador de manera automática al pasar 5 horas desde su arranque.
  • APIs de los lenguajes de programación, que hacen referencia a las librerías de los lenguajes de programación para el consumo de por ejemplo, los procedimientos de las clases.
  • APIs de servicios web, que ofrecen la posibilidad de consumir los servicios que han sido desarrollados. Por ejemplo, la obtención de todos los eventos culturales que sucederán durante el mes de abril en una determinada ciudad.

 

Tipos de arquitecturas

Centrándonos en el mundo web, podemos distinguir principalmente entre dos tipos de arquitecturas, las aplicaciones SOAP y las aplicaciones REST.

Las aplicaciones desarrolladas a través de la arquitectura SOAP son aquellas en las que el servicio no se encuentra instanciado en contraposición con REST, que sí lo está.

En la arquitectura SOAP, los datos son devueltos a través del formato XML mientras que en la arquitectura REST los datos pueden ser devueltos tanto en XML como en JSON.

Si comparamos una base de datos convencional que funciona a través de las operaciones CRUD (Create, Read, Update o Delete) con los servicios web, podemos encontrar la siguiente asociación:

  • Create es POST.
  • Read es SELECT.
  • Update es PUT.
  • Delete es DELETE.

Además, dado que funcionan bajo el protocolo HTTP,  las respuestas de las peticiones utilizan los estados de dicho protocolo para dar un feedback al desarrollador sobre cómo ha ido dichas peticiones.

Actualmente, la arquitectura REST es la que actualmente utilizan tanto los CMS como Prestashop, WordPress o Shopify, los CRM como Zoho o aplicaciones como Facebook e Instagram. Todas ellas ofrecen a los desarrolladores de software documentación oficial sobre cómo consumir sus servicios.

https://www.youtube.com/watch?v=Itf67GFZvi8&t=11s&ab_channel=ConectaSoftware