Saltar al contenido principal

¿Qué es una API? 🤔

Cuando comienzas a aprender programación, escuchas a menudo la palabra "API". Pero puede ser difícil entender exactamente qué es una API. ¡En esta guía explicaremos las API de manera muy simple!

¿Comparar las API con la vida cotidiana?

Comparemos una API con un restaurante.

La historia del restaurante 🍽️

Cuando vas a un restaurante:

  1. Cliente (tú): Quieres pedir comida
  2. Mesero: Recibe tu pedido y lo transmite a la cocina
  3. Cocina: Prepara el plato
  4. Mesero: Trae el plato terminado al cliente

¡Aquí, el mesero juega exactamente el papel de una API!

Cliente(App) → Mesero(API) → Cocina(Servidor)

Cliente(App) ← Mesero(API) ← Plato terminado(Datos)

Definición formal de API

API (Application Programming Interface)

Juega el papel de puente que permite a los programas conversar e intercambiar información.

Entender con ejemplos reales

Ejemplo 1: Aplicación del clima ☀️

Cuando abres una aplicación del clima, se muestra el clima de hoy:

1. La aplicación del clima solicita al servidor del clima "¡Dame el clima de Seúl hoy!"
2. La API transmite esta solicitud
3. El servidor busca la información del clima
4. La API recibe la información y la transmite a la aplicación
5. La pantalla de la aplicación muestra "Seúl, Soleado, 23°C"

Ejemplo 2: Inicio de sesión 🔐

Cuando inicias sesión en otro sitio web con tu cuenta de Google:

1. El sitio web solicita a Google "Verifica a esta persona"
2. La API de Google verifica la información del usuario
3. Si se verifica, responde "OK" al sitio web
4. ¡Inicio de sesión completado!

Ejemplo 3: Aplicación de mapas 🗺️

La razón por la que puedes ver un mapa en una aplicación de entrega:

La aplicación de entrega no crea el mapa directamente,
¡Usa la API de Google Maps para obtener el mapa!

¿Cómo se ve una solicitud de API?

Hacer una solicitud a una API es como ingresar una dirección:

https://api.weather.com/weather?city=Seoul
↑ ↑ ↑
Dirección del servidor ¿Qué quieres? ¿Dónde?

Ventajas de las API 🌟

1. No necesitas reinventar la rueda

Puedes usar funciones ya bien hechas a través de las API.

Ejemplos:

  • Función de pago: Usar API de Stripe
  • Función de mapa: Usar API de Google Maps
  • Función de inicio de sesión: Usar API de inicio de sesión de Google/Facebook

2. Puedes intercambiar información de forma segura

Es seguro porque solo accedes a través de la API sin acceder directamente a la base de datos.

3. Varios programas pueden usarla juntos

Las aplicaciones para teléfonos inteligentes, los sitios web y las aplicaciones para tabletas pueden usar la misma API.

Tipos de API Web

REST API (El más común)

Esta es la forma de API más utilizada en la web.

Características:

  • Solicitud por URL
  • Simple y fácil de aprender
  • Utilizado por la mayoría de los servicios web

Ejemplo:

Obtener(Lectura):  GET https://api.example.com/users
Crear(Escritura): POST https://api.example.com/users
Modificar: PUT https://api.example.com/users/123
Eliminar: DELETE https://api.example.com/users/123

GraphQL

Es una forma que permite solicitar exactamente los datos que necesitas.

SOAP

Es una forma antigua de API. No se usa mucho hoy en día.

Probar usar una API

¡Puedes probar usar una API real con la herramienta API Tester de nuestro sitio!

Práctica simple

  1. Ve a API Tester
  2. Ingresa en la URL: https://api.github.com/users/github
  3. Selecciona GET para Method
  4. ¡Haz clic en el botón Send!

Podrás obtener la información pública de GitHub.

¿Cómo se ve una respuesta de API?

Las API generalmente envían datos en formato JSON:

{
"name": "GitHub",
"location": "San Francisco",
"public_repos": 344
}
Consejo

¿Te preguntas qué es JSON? ¡Consulta el documento Comprender el formato de datos JSON!

Ejemplos de uso práctico

Crear un blog

Ver lista de artículos del blog:
GET https://myblog.com/api/posts

Crear un nuevo artículo:
POST https://myblog.com/api/posts

Crear una tienda en línea

Ver lista de productos:
GET https://myshop.com/api/products

Agregar al carrito:
POST https://myshop.com/api/cart

Resumen de términos clave

TérminoSignificadoEjemplo
Solicitud (Request)Solicitar algo al servidor"Dame información del clima"
Respuesta (Response)La respuesta enviada por el servidor"Seúl está soleado"
Punto final (Endpoint)La dirección de la API/api/weather
Método (Method)Qué acción realizarGET, POST, PUT, DELETE
JSONFormato de intercambio de datos{"city": "Seoul"}

Preguntas frecuentes (FAQ)

P1: ¿Las API son gratuitas?

R: ¡Depende de cada API!

  • API gratuita: Datos públicos, GitHub, etc.
  • API parcialmente gratuita: Gratis hasta cierta cantidad de veces al día (Google Maps, etc.)
  • API de pago: Sistema de pago, datos premium, etc.

P2: ¿Cómo crear una API?

R: Necesitas aprender programación backend.

  • Node.js + Express
  • Python + Django/Flask
  • Java + Spring ¡Puedes crear APIs aprendiendo estas tecnologías!

P3: ¿Qué es una clave API?

R: Es como una contraseña que te permite usar la API.

https://api.example.com/data?key=YOUR_API_KEY_HERE

P4: ¿Qué hacer si ocurre un error?

R: La API te informa con códigos de error:

  • 200: ¡Éxito!
  • 404: No encontrado
  • 500: Error del servidor

¡Para más detalles, consulta la Guía de códigos de estado HTTP!

Próximos pasos 🚀

Si has entendido los conceptos básicos de las API:

  1. Comprender el formato de datos JSON - Cómo las API intercambian datos
  2. API Tester - Usar directamente las API
  3. Guía de códigos de estado HTTP - Entender los códigos de respuesta de las API
  4. Convertidor cURL - Convertir solicitudes de API a varios formatos

Conclusión

¡Las API no son difíciles! Considéralas como la forma en que los programas conversan entre sí.

Como un mesero en un restaurante, la API:

  • Recibe nuestra solicitud
  • La transmite al servidor
  • Y trae de vuelta el resultado

¿Ahora entiendes qué es una API? 🎉