GLOSARIO

¿Qué es una API?

  Esta página ha sido traducida automáticamente por DeepL. Switch to English

Una API (interfaz de programación de aplicaciones) es un conjunto de reglas que permite que un software se comunique con otro. Piensa en ello como un menú: tu aplicación puede «pedir» datos o acciones, y la API le dice a la cocina (un servicio) exactamente qué cocinar y cómo se servirá.

Las API estandarizan la forma en que se realizan las solicitudes y se devuelven las respuestas, de modo que diferentes sistemas pueden funcionar juntos de forma fiable, incluso si han sido creados por diferentes equipos, empresas o en diferentes lenguajes de programación.

how-a-web-api-works

¿Qué hace realmente una API?

A nivel práctico, una API define los puntos finales (direcciones a las que se puede llamar), los métodos que se pueden utilizar (como GET para recuperar datos o POST para enviar datos), el formato de lo que se envía (a menudo JSON) y lo que se debe esperar como respuesta (datos más un código de estado como 200 para «OK» o 404 para «No encontrado»). Esa previsibilidad es la clave.

API, SDK y UI: ¿cuál es la diferencia?

  • API: El contrato sobre lo que puedes solicitar y cómo obtendrás una respuesta.
  • SDK (kit de desarrollo de software): conjunto de herramientas que suele incluir una API con código, ejemplos y utilidades ya preparados para facilitar el uso de la API.
  • Interfaz de usuario (UI): lo que los humanos pulsan y tocan. Las API son para software a software; las UI son para personas.

Si quieres ser exacto, puedes usar una API sin un SDK, pero usar un SDK puede ahorrarte tiempo y reducir los errores.

¿Existen diferentes «tipos» de API?

Sí, varios estilos, cada uno con sus ventajas e inconvenientes:

  • REST: El estilo web más común en la actualidad. Basado en recursos, utiliza métodos HTTP (GET/POST/PUT/DELETE), normalmente JSON.
  • GraphQL: los clientes especifican los campos exactos que necesitan en una sola solicitud, lo que resulta ideal para reducir la sobre- o sub-recuperación.
  • SOAP: Protocolo antiguo basado en XML con contratos estrictos que todavía se utiliza en algunas empresas.
  • gRPC: Protocolo binario de alto rendimiento muy utilizado en microservicios.
  • Webhooks: No es una solicitud que usted realiza, sino una llamada de retorno que el proveedor le envía cuando ocurre algo (como una notificación de entrega).
rest-api

¿Vale la pena utilizar una API?

Por lo general, sí. En lugar de crear todo tú mismo, las API te permiten conectar pagos, mapas, correo electrónico, búsquedas, análisis, inteligencia artificial y mucho más. Esto ahorra tiempo de ingeniería, mejora la fiabilidad (el proveedor mantiene su servicio actualizado) y permite a tu equipo centrarse en lo que hace que tu producto sea único.

Las desventajas: heredas los límites de velocidad, los precios y las dependencias de tiempo de actividad de tu proveedor. Si tu producto no puede funcionar sin esa API, planifica la redundancia.

¿Necesito una «clave» especial para utilizar una API?

A menudo. Muchas API requieren autenticación para que el proveedor sepa quién eres y pueda aplicar permisos y límites de velocidad. Los enfoques más comunes incluyen:

  • Claves API: tokens simples que envías con cada solicitud.
  • OAuth: un método delegado más seguro, ideal cuando necesitas acceder en nombre de un usuario.
  • Solicitudes firmadas / JWT: tokens firmados criptográficamente que caducan y pueden contener reclamaciones (quién eres, qué puedes hacer).

Mantenga las claves y los tokens fuera de los repositorios públicos y del código del lado del cliente siempre que sea posible.

¿Necesito herramientas especiales para llamar a una API?

En realidad, no. Un navegador web, curl o cualquier cliente HTTP funciona para muchas API. Los desarrolladores suelen utilizar herramientas como Postman o bibliotecas de lenguaje integradas para realizar solicitudes, inspeccionar respuestas y guardar ejemplos. Para las aplicaciones de producción, se utiliza la biblioteca HTTP de su lenguaje o el SDK del proveedor.

¿Qué utiliza las API en el mundo real?

Prácticamente todo lo moderno: aplicaciones móviles que extraen perfiles, «Iniciar sesión con Google/Apple», tiendas online que procesan pagos, dispositivos domésticos inteligentes que se sincronizan, paneles de control que extraen análisis, incluso tu widget del tiempo. Si el software intercambia datos, es probable que haya una API detrás.

client-server-architecture

Jerga que verás (y lo que significa)

  • Punto final: la URL a la que llamas (por ejemplo, /users/123).
  • Solicitud/Respuesta: Lo que envías frente a lo que recibes.
  • Carga útil/cuerpo: los datos contenidos en una solicitud o respuesta.
  • Código de estado: resultado numérico (200 OK, 201 Creado, 401 No autorizado, 429 Demasiadas solicitudes, 500 Error del servidor).
  • Límite de frecuencia: número de llamadas que se pueden realizar en un intervalo de tiempo determinado.
  • Control de versiones: mantener separados los comportamientos antiguos y nuevos de la API (por ejemplo, /v1/ frente a /v2/).
  • Idempotente: realizar la misma solicitud varias veces da el mismo resultado (por ejemplo, GET).

CONTENIDO RELACIONADO