8 módulos33 lecciones~10h 30min
Diseño de APIs REST y GraphQL: contratos claros, seguros y difíciles de romper
Aprende a diseñar APIs que otros equipos usan sin preguntarte nada: REST bien hecho, validación, errores, paginación, idempotencia, caché, seguridad, OpenAPI y GraphQL con DataLoader. Con videos animados, un manual paso a paso y una API de biblioteca real en Node.js y TypeScript.
Temario del curso
1
Qué es una API
0 / 3 lecciones
1
Qué es una API y por qué casi todas se rompen por diseño6 min
2
Prepara tu laboratorio: Node 24 y curl en Windows, macOS y Linux15 min
3
Anatomía de una petición HTTP15 min
2
REST bien hecho
0 / 5 lecciones
1
Recursos, no acciones: cómo nombrar las URLs15 min
2
Los métodos HTTP y su promesa: seguro e idempotente19 min
3
Códigos de estado que dicen la verdad18 min
4
Tu primera API con Fastify18 min
5
CRUD completo contra SQLite: PUT o PATCH19 min
3
El contrato
0 / 5 lecciones
1
Validar en la frontera con JSON Schema19 min
2
Errores consistentes con Problem Details24 min
3
Paginación: offset o cursor16 min
4
Filtros, orden y búsqueda sin inventar un idioma19 min
5
Versionar sin romper a nadie15 min
4
APIs que aguantan el mundo real
0 / 5 lecciones
1
Claves de idempotencia: reintentar sin duplicar24 min
2
Concurrencia con ETag e If-Match23 min
3
Caché HTTP: Cache-Control, ETag y 30420 min
4
Rate limiting: el 429 y Retry-After14 min
5
CORS: por qué funciona con curl y falla en el navegador17 min
5
Seguridad de APIs
0 / 3 lecciones
1
Autenticación: API keys o tokens16 min
2
BOLA: el fallo número 1 de las APIs20 min
3
Asignación masiva: el socio que se hizo administrador21 min
6
Documentar y probar el contrato
0 / 3 lecciones
1
OpenAPI generada desde los esquemas21 min
2
Contract-first: el contrato antes que el código19 min
3
Tests de contrato: atrapar el cambio que rompe20 min
7
GraphQL
0 / 6 lecciones
1
Qué problema resuelve GraphQL12 min
2
Tu primer esquema con GraphQL Yoga19 min
3
Mutations y errores en GraphQL22 min
4
El problema N+1 y DataLoader22 min
5
Paginación por conexiones (cursor)19 min
6
Proteger GraphQL: profundidad y complejidad23 min
8
Integrar y decidir
0 / 3 lecciones
1
Webhooks: avisar a otros sistemas con firma30 min
2
REST, GraphQL o gRPC: cómo decidir12 min
3
Proyecto final: la API completa de la biblioteca38 min