Curso de FastAPI: APIs con Python

Construye APIs web con Python: rutas, validación con Pydantic, base de datos, autenticación JWT y despliegue.

Aprende a crear APIs con FastAPI: endpoints, parámetros, validación con Pydantic, dependencias, base de datos con SQLAlchemy, autenticación con JWT, testing y despliegue, con simuladores que responden como una API real.

Contenido del curso

Unidad 1: Primeros Pasos con FastAPI

Repasa HTTP, REST y JSON, conoce qué es FastAPI, prepara tu entorno, crea tu primer endpoint y explora la documentación que genera automáticamente.

Unidad 2: Rutas y Parámetros

Recibe datos en tus endpoints: parámetros de ruta, de consulta y cabeceras, con validación automática, filtros, orden y paginación.

Unidad 3: Cuerpo de la Petición y Pydantic

Recibe JSON con modelos Pydantic: campos obligatorios y opcionales, restricciones con Field, modelos anidados, validadores y lectura de los errores 422.

Unidad 4: Respuestas y Manejo de Errores

Devuelve el código de estado correcto, lanza HTTPException, filtra la salida con response_model, separa modelos de entrada y salida y personaliza los manejadores de errores.

Unidad 5: Un CRUD Completo

Diseña rutas REST y construye crear, leer, actualizar (PUT y PATCH) y eliminar, ordenando el proyecto con APIRouter.

Unidad 6: Dependencias y Base de Datos

Reutiliza lógica con Depends, conecta la API a una base de datos con SQLAlchemy, separa modelos ORM de esquemas Pydantic y versiona los cambios con Alembic.

Unidad 7: Autenticación y Seguridad

Protege tu API: hash de contraseñas, login con OAuth2, tokens JWT, rutas protegidas, roles, CORS y buenas prácticas de seguridad.

Unidad 8: Testing, Despliegue y Evaluación Final

Prueba tu API con pytest y TestClient, configúrala con variables de entorno, entiende async y las tareas en segundo plano, despliégala con Docker y cierra el curso con una evaluación final.