A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

¿Qué es una API?

API se refiere a “interfaz de programación de aplicaciones.” De manera general, una API es una forma en que los sistemas de software o piezas de código se comunican entre sí, generalmente para que un sistema o pieza de código “pida” a otro realizar tareas, transferir datos o ambas cosas. La API de un sistema define lo que otros sistemas/código pueden pedirle que haga, y los detalles técnicos de la comunicación (como los formatos de datos).

¿Qué tipos de APIs existen?

Hay muchas maneras de categorizar las APIs. Una forma es por el tipo de sistemas de software que están interactuando:

  • Los sistemas operativos, como macOS, iOS o Windows, ofrecen APIs para que las aplicaciones las utilicen. El SO controla cómo y cuándo otro software puede interactuar con el hardware, lo que incluye discos, conexiones de red como Wi-Fi y Ethernet, cámaras, dispositivos USB y más. Las aplicaciones en el dispositivo deben usar estas APIs para pedirle al SO que interactúe con el hardware en su nombre.
  • Los navegadores web ofrecen APIs para que los sitios las utilicen. El navegador media todas las interacciones entre el sitio y tu dispositivo, a través de estas APIs. Por ejemplo, si un sitio web quiere saber la ubicación física de tu dispositivo, debe usar la API del navegador; el sitio web no puede acceder directamente al chip GPS de tu dispositivo. En este escenario, el sitio web usa la API del navegador para pedir tu permiso para obtener tu ubicación física.
  • Los sitios y apps también pueden ofrecer APIs (a veces llamadas “webservice”) para que aplicaciones y servicios de terceros puedan interactuar con ellos. Por ejemplo, algunos servicios de redes sociales tienen una API para hacer publicaciones en el sitio. Los desarrolladores externos pueden usar esa API para diversos propósitos, como hacer publicaciones en momentos programados o en respuesta a ciertos eventos.

Otra forma de categorizar las APIs es por la mecánica específica de cómo se realiza la comunicación. Una “API REST” es un ejemplo de esta categorización.

¿Por qué son importantes las APIs?

Las APIs definen las formas en que sistemas de software separados pueden interactuar entre sí. Las APIs del sistema operativo determinan lo que las aplicaciones pueden hacer, y las APIs del navegador determinan lo que los sitios pueden hacer. De esta manera, las APIs son fundamentales para crear experiencias fluidas entre hardware, aplicaciones, sitios y otro software.

Más importante aún, los creadores de APIs pueden usarlas para dar un trato preferencial en cuanto a acceso o capacidad. Por ejemplo, iOS de Apple tiene algunas APIs que solo las aplicaciones fabricadas por Apple pueden usar, lo que excluye a la competencia de algunos otros desarrolladores de aplicaciones. De esta manera, la API de una empresa puede dictar el éxito de otra empresa.

Preocupaciones de seguridad y privacidad

Debido a que una API es la frontera entre un sistema de software y el mundo exterior, las APIs son cruciales para seguridad y privacidad. Los fallos de seguridad en las APIs pueden darle a los atacantes capacidades que no deberían tener. Cuando un servicio web ofrece una API, deben ser extremadamente cuidadosos al diseñarla y gestionar el acceso a la misma, o corren el riesgo de comprometer la privacidad de sus usuarios.

Un ejemplo notable de un fallo de privacidad habilitado por la API de un servicio web es la exposición de los datos de transacciones de algunos usuarios de Venmo a través de su API. Cualquiera en Internet, incluso sin una cuenta de Venmo, podría usar la API para ver los datos de transacción de cualquier usuario de Venmo que no haya configurado la visibilidad de sus datos como “privado.” Esos usuarios probablemente no pretendían que sus transacciones fueran tan visibles. Es importante señalar que nadie “hackeó” Venmo ni a ningún usuario de Venmo para obtener estos datos. Hicieron uso de las capacidades que Venmo ofreció voluntariamente a los desarrolladores externos. Venmo había diseñado y lanzado una API que no protegía adecuadamente la privacidad de sus usuarios.

Otro riesgo potencial para la privacidad está en las APIs de los navegadores web. Las capacidades que los navegadores ofrecen a los sitios a través de las APIs dependen del dispositivo específico, el SO y el navegador. Estas diferencias pueden ser utilizadas en huellas digitales, una técnica que permite a los sitios rastrear a los usuarios.

¿Te atreves a descubrir el nuevo Internet de Brave?

Brave está desarrollado por un equipo de precursores de la web centrados en el rendimiento y la privacidad. Ayúdanos a solventar las deficiencias de la navegación.