Volver al diccionario
Desarrollo Web
API (Application Programming Interface)
Una API permite que aplicaciones se comuniquen entre sí. Aprende qué es una API, cómo funciona, tipos REST vs GraphQL y por qué son la base del desarrollo web moderno.
Qué es una API
Una API (Application Programming Interface o Interfaz de Programación de Aplicaciones) es un contrato que define cómo dos aplicaciones pueden comunicarse entre sí. Especifica qué operaciones están disponibles, cómo solicitarlas y qué respuesta se puede esperar.
La analogía más común: una API es como el camarero en un restaurante. El cliente (frontend o aplicación) hace un pedido (petición). El camarero (API) lo lleva a la cocina (servidor/backend). La cocina prepara el plato (procesa la petición) y el camarero lo trae de vuelta (respuesta con datos).
En el desarrollo web moderno, las APIs son omnipresentes: tu app de tiempo consulta una API meteorológica; tu tienda online usa la API de Stripe para cobros; tu CRM se sincroniza con la API de Gmail; tu web de Next.js obtiene los productos de la API de tu ecommerce.
Cómo funciona una API web
El ciclo básico de una petición API:
1. El cliente (navegador, app, otro servidor) construye una petición HTTP con método, URL, cabeceras y opcionalmente un body
2. El cliente envía la petición al servidor donde está la API
3. El servidor recibe la petición, la valida, ejecuta la lógica necesaria y consulta la base de datos si hace falta
4. El servidor construye una respuesta con código de estado HTTP y los datos solicitados (habitualmente en JSON)
5. El cliente recibe la respuesta y procesa los datos
Tipos de APIs web
REST (RESTful API)
El estilo más extendido. Usa los métodos HTTP estándar y URLs para representar recursos:
\\\`
GET /api/productos → Lista de productos
GET /api/productos/123 → Producto con ID 123
POST /api/productos → Crear nuevo producto
PUT /api/productos/123 → Actualizar producto 123 completamente
PATCH /api/productos/123 → Actualizar campos específicos
DELETE /api/productos/123 → Eliminar producto 123
\\\`
Ejemplo de respuesta JSON:
\\\`json
{
"id": 123,
"nombre": "Zapatillas Running Pro",
"precio": 89.99,
"stock": 42,
"categoria": "calzado"
}
\\\`
GraphQL
Lenguaje de consulta donde el cliente especifica exactamente qué datos necesita en una sola petición. Evita el "over-fetching" (recibir más datos de los necesarios) y el "under-fetching" (tener que hacer múltiples llamadas).
WebSocket
Protocolo de comunicación bidireccional y persistente. En lugar del modelo petición-respuesta de REST, tanto cliente como servidor pueden enviar mensajes en cualquier momento. Ideal para chats, notificaciones en tiempo real, colaboración en vivo.
Webhook
Un "webhook inverso": en lugar de que el cliente pregunte a la API, la API avisa proactivamente al cliente cuando ocurre un evento.
Autenticación de APIs
Las APIs suelen proteger sus endpoints para que solo usuarios/aplicaciones autorizados puedan usarlas:
API Keys
Una clave secreta que se envía en cada petición. Simple pero efectiva para acceso servidor-servidor.
\\\`
Authorization: Bearer sk-mi-api-key-secreta
\\\`
JWT (JSON Web Tokens)
Token firmado criptográficamente que contiene información del usuario. El servidor puede verificarlo sin consultar la base de datos.
OAuth 2.0
Estándar para autorización delegada. Cuando inicias sesión en una app con tu cuenta de Google, estás usando OAuth. El usuario autoriza a la app a acceder a ciertos datos en su nombre.
APIs en el contexto del ecommerce
El ecommerce moderno es un ecosistema de APIs:
- API de pagos: Stripe, PayPal, Redsys
- API de envíos: Correos, MRW, DHL para cálculo de tarifas y tracking
- API del ERP: Sincronización de stock, pedidos y clientes
- API del PIM: Obtención de datos de producto
- API de marketplaces: Amazon, El Corte Inglés, Miravia
- API de analytics: Google Analytics 4 Measurement Protocol
- API de email: Mailchimp, Klaviyo para automatizaciones
Preguntas frecuentes
¿Qué diferencia hay entre API REST y API GraphQL?
REST usa múltiples endpoints (uno por recurso) y devuelve una estructura fija. GraphQL usa un único endpoint y el cliente define exactamente qué datos necesita. REST es más simple de implementar; GraphQL es más eficiente cuando el cliente necesita datos de múltiples recursos en una sola petición. Shopify y WooCommerce (extensión) ofrecen ambas opciones.
¿Qué es una API pública vs privada?
Una API pública está disponible para cualquier desarrollador que quiera usarla (a menudo con registro y API key). Una API privada solo es accesible dentro de la organización o para partners específicos. Muchos servicios ofrecen ambas: una API pública con límites y una privada sin restricciones para sus propias aplicaciones.
¿Cuánto cuesta usar APIs de terceros?
Depende del servicio. Muchas APIs tienen un plan gratuito con límite de llamadas mensuales (p.ej. 1.000 peticiones/mes gratis), y luego precios escalonados según el volumen. Stripe cobra por transacción procesada (1,4% + 0,25€ en Europa), no por llamada a API.
Términos relacionados
Necesitas ayuda con tu ecommerce?
Somos expertos en desarrollo de tiendas online. Cuéntanos tu proyecto y te asesoramos sin compromiso.
Contactar con Ganton