EBAC Logotipo
Menú

8.3 ¿Qué es una API y para qué sirve?

Aprenderás qué es una API, cómo permite que distintas partes de una aplicación se comuniquen entre sí, y por qué es una pieza clave en el desarrollo moderno y procesamiento de datos

1. Comprende qué es una API

Una API permite que diferentes partes de un sistema o app se comuniquen entre sí. Es un conjunto de reglas que permite que distintas aplicaciones se comuniquen entre sí, intercambiando información de forma estructurada.


En el desarrollo de software, las APIs son fundamentales para lograr que el frontend, el backend y hasta sistemas externos trabajen en conjunto sin estar directamente conectados.


Sirven como intermediario entre partes que no se conocen directamente, pero que necesitan intercambiar datos.


Usos comunes:

  1. Acceder a bases de datos desde una interfaz web.
  2. Conectarse con servicios externos (clima, mapas, pagos).
  3. Integrar aplicaciones móviles con servidores web.

2. Reconoce los distintos tipos de API


Las APIs no son todas iguales. Existen diferentes tipos, dependiendo del contexto y propósito:

  1. APIs Web: permiten que aplicaciones se comuniquen a través de internet usando protocolos como HTTP. Son las más comunes en desarrollo web moderno.
  2. Librerías (APIs locales): ofrecen funciones reutilizables dentro de una misma aplicación, como las funciones matemáticas de Python.
  3. Servicios Web: exponen funcionalidades completas a través de la red, usando estándares como SOAP o REST.


Cada tipo de API define su forma de uso, acceso y respuesta, pero todas comparten el objetivo de facilitar la interacción entre componentes.

3. Entiende cómo se estructura una API


Los endpoints son rutas o direcciones únicas que representan distintas acciones posibles sobre los datos.

Cada endpoint define:


  1. Una URL específica, como /api/tareas.
  2. Un método HTTP (GET, POST, PUT, DELETE), que indica qué tipo de acción realizar.
  3. Una respuesta estándar, normalmente en formato JSON.


Ejemplos de operaciones:

  1. GET /api/tareas: obtener la lista de tareas.
  2. POST /api/tareas: crear una nueva tarea.
  3. DELETE /api/tareas/4: eliminar la tarea con ID 4.

4. Usa métodos HTTP para interactuar con la API


Una API utiliza métodos HTTP como si fueran verbos: indican qué se quiere hacer con un recurso, y al igual que un sistema CRUD responden a los métodos más comúnes:


  1. GET: obtener información (lectura).
  2. POST: enviar datos nuevos (creación).
  3. PUT: modificar un recurso existente (actualización).
  4. DELETE: eliminar un recurso.


Estos métodos se combinan con los endpoints para estructurar la lógica de una API. Ejemplo:

  1. POST /api/tareas: crea una tarea.
  2. PUT /api/tareas/3: actualiza la tarea con ID 3.

5. Protege tus datos con autenticación en APIs


Las APIs suelen manejar información sensible. Por eso, la autenticación es clave para verificar quién accede a qué datos. Los métodos comunes de autenticación son:

  1. Claves API: cadenas únicas asignadas a un usuario o app.
  2. Tokens de acceso: generados tras iniciar sesión, se usan en cada solicitud.
  3. OAuth: estándar que permite acceso delegado entre servicios (ej. iniciar sesión con Google).


Estos mecanismos:

  1. Aseguran que solo usuarios autorizados puedan usar la API.
  2. Previenen accesos no deseados o maliciosos.
  3. Permiten auditar y limitar el uso de la API.

6. Usa formatos como JSON para intercambiar datos

Cuando una API envía o recibe información, lo hace en un formato estandarizado que ambas partes puedan entender.


Los formatos más comunes son:

JSON (JavaScript Object Notation):

  1. Sintaxis simple, basada en pares clave-valor.
  2. Ligero, fácil de leer y procesar desde cualquier lenguaje.

Ejemplo:

{ "titulo": "Leer", "estado": "pendiente" }

XML (eXtensible Markup Language):

  1. Más estructurado y robusto, pero más pesado.
  2. Requiere mayor procesamiento.


Hoy en día, JSON es el formato estándar para estructurar respuestas en APIs.

7. Aplica los principios REST para diseñar APIs escalables


Una API RESTful sigue principios que promueven la claridad, reutilización y compatibilidad entre sistemas.


Características clave:

  1. Usa métodos HTTP estándar (GET, POST, PUT, DELETE).
  2. Representa recursos con URLs claras (/tareas, /usuarios/3).
  3. Se apoya en una arquitectura sin estado (stateless).
  4. Las respuestas suelen estar en formato JSON.


Con esto obtenemos beneficios como:

  1. Facilita el desarrollo modular.
  2. Mejora la escalabilidad.
  3. Es compatible con casi cualquier lenguaje y plataforma.

8. Conclusión

Una API es el puente que conecta distintas partes de una aplicación —o incluso aplicaciones enteras— para que puedan comunicarse de forma clara, segura y eficiente.


Entender las APIs te permite construir sistemas robustos y bien integrados.


Para seguir aprendiendo:

  1. Documentación de APIs de Google
  2. Swagger/OpenAPI para documentar y diseñar APIs.
  3. ProgrammableWeb con miles de APIs y noticias del sector.