Ir al contenido

¿Qué es una API? Una guía en lenguaje sencillo

· Callr

¿Qué es una API? Una guía en lenguaje sencillo

Seguro que alguna vez te has topado con el término «API» — quizá de boca de un amigo desarrollador, quizá en un artículo de tecnología. Algo que tiene que ver con conectar datos, ¿verdad? Esta guía es para cualquiera que se haya preguntado alguna vez, en voz alta o en silencio, qué es realmente una API. Lo haremos sin jerga, apoyándonos en ejemplos cotidianos, y mostrando cómo las API y su pariente cercano, los webhooks, hacen funcionar las automatizaciones de las que dependes cada día.

¿Qué significa API?

API son las siglas de Application Programming Interface, es decir, «interfaz de programación de aplicaciones». Tres palabras que suenan más intimidantes que la idea que hay detrás. Al terminar este artículo, cada una tendrá sentido — y empezarás a notar las API trabajando en silencio detrás de casi todas las aplicaciones que usas.

Una API, ¿qué es en realidad?

Lo primero que hay que entender es que una API es una interfaz. ¿Una interfaz hacia qué? Hacia una aplicación. ¿Y quién la usa? Otros programas — no personas. Ese es el punto clave: las API las consume el software, no personas haciendo clic en botones.

Así que esta es una definición limpia: una API es una interfaz que un programa usa para interactuar con otra aplicación. O, dicho aún más simple, las API permiten que los ordenadores se hablen entre sí.

Una analogía útil es el enchufe de la pared. Para secarte el pelo, tu secador necesita electricidad. No vas a meter el dedo en el cableado para sacar la corriente — eso no te secaría el pelo, y sería peligroso. Necesitas una interfaz que haga la electricidad accesible y utilizable de forma segura: el enchufe. Y tampoco tocas el enchufe directamente; conectas el secador. La clavija extrae la corriente a través del enchufe para alimentar el aparato.

Trasládalo al software: tú eres la persona que usa su ordenador, el secador es el programa, el enchufe es la API, y la electricidad es la aplicación que proporciona el dato o el servicio. «Secarte el pelo» es lo que sea que el programa se diseñó para hacer.

Una advertencia: una API no es hardware. Es simplemente otro programa que se ejecuta en un servidor — un conjunto de reglas acordadas que ambas partes siguen para intercambiar información de forma fiable.

Algunos ejemplos de API

Veamos las API en acción. Imagina que gestionas el contenido de un sitio web que recopila cosas que hacer en una ciudad. Para cada evento que publicas, quieres mostrar un mapa con un marcador que señale el lugar. Tienes varias opciones:

  1. Buscar a mano la latitud y la longitud de cada dirección y situarla tú mismo.
  2. Pedir a un desarrollador que escriba una línea de código a medida para cada dirección.
  3. Usar un servicio que, a través de las API de geocodificación y mapas de un proveedor de cartografía, obtiene las coordenadas y coloca un mapa listo para usar en tu página en cuestión de segundos.

La opción 3 es la única que elegiría una persona sensata. Esto es lo que ocurre cuando la usas: tu gestor de contenido escribe una dirección en un formulario del back-office. Pulsar «Enter» envía pequeños paquetes de datos — por Wi-Fi, y luego a través de los cables físicos de Internet — hacia los servidores del proveedor. Esos servidores interpretan la petición, buscan las coordenadas y las devuelven en un formato legible por una máquina, como JSON (gracias a la API de geocodificación). El mapa y el marcador se renderizan entonces en tu página en un formato legible por una persona.

Esa única petición ahorra mucho trabajo tanto a tu gestor de contenido como a tu desarrollador. Esta es una de las principales ventajas de una API: permite al usuario final hacer algo útil mientras ahorra a los programadores el código tedioso y repetitivo que de otro modo haría falta para construir lo mismo desde cero. Cuanto más convierte una API un proceso complejo y repetido a menudo en unas pocas líneas de código reutilizable, más productivo se vuelve todo el mundo.

Por eso las API están en todas partes. Proveedores de mapas, plataformas sociales, procesadores de pago, servicios de mensajería — todos exponen API para que los desarrolladores puedan incrustar mapas, habilitar botones de «iniciar sesión con…», aceptar pagos y mucho más. Las posibilidades van de lo más simple a lo genuinamente sofisticado.

Volvamos a nuestro sitio de eventos. Supón que se cancela un concierto y necesitas avisar por SMS a los 500 poseedores de entradas. Podrías coger el teléfono y enviar 500 mensajes a mano — o integrar una API de SMS como Callr que los envía automáticamente, aplicando exactamente los principios anteriores. El resultado es una mejora notable de la eficiencia y la capacidad de construir flujos de trabajo que aportan valor real a tu negocio.

Los webhooks y el «principio de Hollywood»

Cuando un programa usa una API, hace una petición — algo que a menudo se describe como «llamar a la API». Cada llamada consume recursos del servidor, y por eso muchas API comerciales limitan cuántas peticiones puedes hacer en una ventana de tiempo dada, para que sus sistemas no se sobrecarguen.

En algunas situaciones, llamar constantemente a una API solo para comprobar si algo ha cambiado es un desperdicio. Sería mucho más eficiente que la API pudiera simplemente avisarte en el momento en que llega información nueva. Eso es exactamente lo que hacen los webhooks.

Imagina un sitio de comercio que ha integrado la API de un proveedor de pagos para que los clientes compren con facilidad. En el lado del proveedor ocurren eventos importantes que no aparecerán a menos que los pidas — por ejemplo, cuando falla el pago de una suscripción. Sondear la API una y otra vez para comprobarlo es un uso ineficiente de los recursos. Pero si tu sitio nunca se entera de que el pago falló, acabas con clientes descontentos.

Los webhooks resuelven esto invirtiendo el flujo. En lugar de que tu programa pida actualizaciones a la API una y otra vez, es la API la que notifica a tu programa en el instante en que ocurre un evento predefinido. A veces se le llama el «principio de Hollywood»: no nos llames, ya te llamamos nosotros.

Para un proveedor de pagos, los webhooks pueden actualizar la ficha de un cliente cuando un pago tiene éxito o falla, señalar una disputa, etc. En Callr usamos los webhooks de la misma manera — para avisar a nuestros clientes cuando se ha entregado un SMS, cuando el saldo de una cuenta se está agotando, y para muchos otros eventos que vale la pena conocer en el momento en que suceden.

Los webhooks en acción

Para reunir todas estas ideas, aquí va un último ejemplo de flujo de trabajo eficiente y automatizado.

Imagina que eres comercial en una feria y vas registrando en una tablet los prospectos que conoces. Tu equipo usa una herramienta para recoger los datos de contacto desde un formulario y otra para gestionar los leads en un tablero compartido. Prospectar en una feria es agotador, y lo último que quiere nadie es copiar a mano los datos de cada lead, hacer algo de investigación en línea y montar una ficha para cada persona con la que habla.

Aquí es donde entra una herramienta de automatización no-code — del tipo que conecta distintas API en flujos de trabajo más inteligentes sin que escribas ni una línea de código. Con ella podrías:

  • Usar un webhook para que, en el momento en que alguien rellena tu formulario de contacto, se cree automáticamente una nueva ficha de lead en tu tablero compartido.
  • Ir más allá añadiendo un servicio de enriquecimiento de datos que, a partir de una dirección de correo, recupera información pública relevante sobre esa persona o empresa.

Conecta todo eso y, cada vez que tu comercial introduce el correo de un prospecto, aparece en el tablero una ficha ya rellenada para que la vea todo el equipo — con las notas del formulario y los datos enriquecidos — sin esfuerzo adicional por su parte. Es una forma asombrosamente sencilla de poner las API a trabajar y agilizar un flujo de trabajo, sin una sola línea de código.

Lo esencial

Algunas cosas que conviene recordar:

  • Una API es una Interfaz que usan los Programas para interactuar con una Aplicación.
  • Las API exponen datos; los desarrolladores escriben programas que los consumen.
  • Los proveedores de mapas, las plataformas sociales, los procesadores de pago y los servicios de mensajería como Callr ofrecen todos API útiles — casi todos los servicios modernos lo hacen.
  • Los desarrolladores conectan estas API a sus propias aplicaciones en lugar de reinventar la rueda, lo que les permite centrarse en el valor central de lo que están construyendo.
  • Las API están diseñadas para exponer datos en un formato legible por una máquina (a menudo JSON), mientras que los sitios web exponen datos en un formato legible por una persona (imágenes, enlaces, formularios).
  • Los webhooks son llamadas de API invertidas: la petición la envía el servicio externo y la recibe tu aplicación, en el momento en que algo sucede.

Esta guía se ha centrado sobre todo en las API web, pero existen muchos otros tipos de API. Si quieres ver una de cerca, échale un vistazo a la documentación de la API de Callr — Callr ofrece una API REST y webhooks que puedes poner a trabajar de inmediato.

Reservar una demoEmpieza gratis