Saltar al contenido principal
FastAPI
Framework Backend

Formación corporativa en FastAPI

Framework Python async para APIs, microservicios e inferencia ML.

Evidencias FUNDAE Activación guiada Evaluación con IA Itinerario a medida

¿Prefieres verlo en directo? Agenda una demo sin compromiso.

Resumen del itinerario en FastAPI

Para qué equipos

Equipos técnicos que incorporan FastAPI a su stack productivo o consolidan competencias antes de un proyecto crítico. Adaptamos el temario al nivel de partida y al stack acompañante.

Qué se trabaja

Lecciones aplicadas y ejercicios prácticos en FastAPI resueltos en el IDE del navegador, con corrección automática por IA y proyectos integradores revisados con rúbrica explícita.

Cómo se contrata

Propuesta concreta sobre teleformación, aula virtual o plan mixto. Sin coste de setup, sin permanencia, con evidencias FUNDAE exportables para la entidad organizadora.

Activación en 3 pasos

Diseñamos el itinerario, el alcance y el calendario según el nivel y el stack de tu equipo. Evidencias FUNDAE exportables, sin permanencia ni coste de setup.

  1. 1 Demo o llamada
    30 min con el fundador. Cuéntanos el stack, el nivel y el calendario.
  2. 2 Propuesta
    Itinerario y modalidad (teleformación, aula virtual o mixto) con evidencias FUNDAE exportables.
  3. 3 Tenant activo
    Tu equipo entra con SSO, asignaciones automáticas y panel admin completo.

¿Prefieres verlo en directo? Agenda una demo sin compromiso.

Qué incluye la formación

Toda la plataforma CertiDevs disponible para tu equipo durante el itinerario. Sin costes ocultos ni módulos premium.

Entornos de programación online, sin instalar nada en el equipo del alumno.
Evaluación con IA de cada ejercicio de código, proyecto y ensayo, con feedback y nota.
Certificado verificable con NIF del alumno y firma digital de CertiDevs.
Panel admin de empresa: alta masiva CSV, asignaciones, foros y encuestas.
Rol inspector FUNDAE con acceso de solo lectura a actividad y resultados.
Reportes exportables en Excel: accesos, progreso, completion y satisfacción.
Integración con tu LMS: LTI 1.1 + 1.3 Deep Linking y exportación SCORM 1.2.
SSO con tu Active Directory (OIDC, Microsoft Entra, Google Workspace).
White-label opcional: subdominio propio, logo y tema de tu marca.
Pruebas técnicas: mismos exámenes para evaluar candidatos en selección.
Foros y mensajería tutorial integrados, requisito FUNDAE cubierto de serie.
Soporte directo de nuestro equipo durante toda la formación.

Cursos disponibles en FastAPI

Cada curso se puede asignar de forma independiente o combinar en un plan formativo.

Curso completo FastAPI

Curso completo para construir APIs REST modernas con Python usando FastAPI. Aprendes a estructurar proyectos en capas, validar datos con tipado estricto, inyectar dependencias, persistir con ORM relacional y migraciones, renderizar HTML con plantillas, programar endpoints asíncronos y canales en tiempo real, asegurar la API con OAuth2 y JWT, testear con pytest y desplegar con Docker. Al terminar entregas un servicio Python async, documentado y listo para producción.

Ver curso
Especialización FastAPI REST

Curso centrado en construir APIs REST con FastAPI cuando necesitas rendimiento, tipado estricto y documentación automática sin esfuerzo. Aprendes a definir rutas asíncronas, validar entradas y salidas con modelos tipados, inyectar dependencias, persistir con ORM asíncrono y migraciones, asegurar la API con OAuth2 y JWT, exponer canales en tiempo real, testear con cobertura y desplegar con contenedores. Al terminar entregas un backend Python preparado para producción.

Ver curso
Especialización FastAPI: interfaces web, async y tiempo real

Curso para llevar FastAPI más allá del JSON puro y construir experiencias web completas en un solo stack Python. Aprendes a renderizar HTML con plantillas, servir archivos estáticos, gestionar formularios y subida de ficheros, organizar la aplicación con routers, y aplicar patrones asíncronos para bases de datos, peticiones HTTP, tareas en segundo plano y canales en tiempo real con WebSockets. Al terminar combinas páginas servidas y APIs async en el mismo servicio sin forzar frontales separados antes de tiempo.

Ver curso
Especialización FastAPI: seguridad, pruebas y despliegue

Curso para endurecer APIs FastAPI y llevarlas a entornos productivos con criterio. Aprendes a aplicar hashing seguro de contraseñas, autenticación con OAuth2, límites de uso para proteger endpoints, configurar middleware y CORS, escribir tests mantenibles con dependencias inyectadas y preparar la configuración por entornos para empaquetar el servicio en contenedores. Al terminar entregas un servicio seguro, verificado en CI y reproducible en cualquier entorno de despliegue.

Ver curso

Ver todos los cursos del catálogo

Stacks habituales que las empresas combinan en sus planes formativos junto a FastAPI.

Estructura del itinerario

Módulos, lecciones y ejercicios del itinerario

Introducción y entorno

FastAPI es un framework web moderno para construir APIs con Python que se ha convertido en una de las opciones más populares para el desarrollo de servicios web. Su diseño se centra en la velocidad de desarrollo y el rendimiento, ofreciendo características avanzadas como validación automática de datos, documentación interactiva y soporte nativo para programación asíncrona.

¿Qué es FastAPI?

FastAPI combina la simplicidad de Python con las mejores prácticas del desarrollo web moderno. A diferencia de otros frameworks, FastAPI genera automáticamente documentación interactiva de tu API mientras escribes el código, utilizando estándares como OpenAPI y JSON Schema.

El framework está construido sobre Starlette para las funcionalidades web y Pydantic para la validación de datos, lo que le proporciona una base sólida y confiable. Esta arquitectura permite que FastAPI ofrezca un rendimiento comparable a frameworks escritos en lenguajes compilados como Go o Node.js.

Características principales

FastAPI destaca por varias características que lo hacen especialmente atractivo para desarrolladores:

  • Validación automática: Los datos de entrada se validan automáticamente según los tipos de Python que declares
  • Documentación interactiva: Genera automáticamente documentación Swagger UI y ReDoc
  • Soporte para async/await: Manejo nativo de operaciones asíncronas para mejor rendimiento
  • Autocompletado del editor: Excelente soporte para IDEs gracias a los type hints de Python
  • Estándares modernos: Basado en OpenAPI, JSON Schema y OAuth2
  • Introducción a FastAPI Lección
  • Instalación de FastAPI y configuración Lección

Modalidades de contratación

Elige la modalidad que mejor se adapte a tu organización. Sin permanencia ni coste de setup.

Teleformación

Acceso autónomo al itinerario en la plataforma: lecciones, vídeos, ejercicios evaluados por IA y proyecto integrador. Con tutorización y foro técnico.

Solicitar propuesta

Aula virtual privada

Sesiones en directo sobre cohorte cerrada del cliente. Práctica guiada, resolución de dudas, evaluación al cierre y evidencias exportables.

Solicitar propuesta

Plan mixto

Teleformación con sesiones en directo intercaladas. Equilibra autonomía del alumno con hitos guiados, revisión de proyectos y feedback síncrono.

Solicitar propuesta

Sobre FastAPI

Sebastián Ramírez Desde 2018 Documentación oficial

FastAPI es un framework web moderno y de alto rendimiento para construir APIs con Python, basado en las anotaciones de tipo estándar de Python. Desarrollado por Sebastián Ramirez, FastAPI combina la facilidad de uso de frameworks como Flask con el rendimiento de frameworks asíncronos como Starlette, ofreciendo una experiencia de desarrollo excepcional tanto para principiantes como para desarrolladores experimentados.

Arquitectura de FastAPI

FastAPI se apoya en dos dependencias principales: Starlette aporta el servidor web ASGI, el enrutamiento y el soporte para WebSockets; Pydantic v2 aporta la validación y serialización de datos con anotaciones de tipo. Sobre ellos, FastAPI añade el sistema de dependencias, la generación automática de documentación OpenAPI 3.1 y las utilidades de seguridad.

flowchart TB
    subgraph cliente[Cliente HTTP]
        Browser[Navegador / curl / Postman]
    end
    subgraph servidor[Proceso ASGI]
        Uvicorn[Uvicorn / Hypercorn]
        subgraph fastapi_app[FastAPI application]
            Starlette[Starlette: routing, middleware, WebSockets]
            Pydantic[Pydantic v2: validación y serialización]
            DI[Sistema de dependencias]
            OpenAPI[OpenAPI 3.1 autogenerado]
        end
    end
    subgraph infra[Infraestructura]
        DB[(PostgreSQL / SQLite)]
        Redis[(Redis / broker)]
    end
    Browser -->|HTTP/1.1, HTTP/2, WS| Uvicorn
    Uvicorn --> Starlette
    Starlette --> DI
    DI --> Pydantic
    DI --> DB
    DI --> Redis
    Starlette --> OpenAPI

¿Qué hace especial a FastAPI?

FastAPI se distingue por su arquitectura asíncrona nativa, que permite manejar miles de conexiones concurrentes con un consumo mínimo de recursos. A diferencia de frameworks tradicionales que procesan las peticiones de forma secuencial, FastAPI aprovecha las capacidades asíncronas de Python para ofrecer un rendimiento comparable a frameworks escritos en Go o Node.js.

La validación automática de datos es otra característica fundamental. FastAPI utiliza Pydantic para validar automáticamente los datos de entrada y salida, eliminando la necesidad de escribir código de validación manual. Esto no solo reduce errores, sino que también mejora la productividad del desarrollador significativamente.

from fastapi import FastAPI
from pydantic import BaseModel, EmailStr, Field

app = FastAPI()

class Usuario(BaseModel):
    nombre: str = Field(min_length=1, max_length=80)
    edad: int = Field(ge=0, le=130)
    email: EmailStr

@app.post("/usuarios/")
async def crear_usuario(usuario: Usuario):
    return {"mensaje": f"Usuario {usuario.nombre} creado correctamente"}

Ecosistema y herramientas integradas

FastAPI incluye documentación automática mediante Swagger UI y ReDoc, generada directamente desde el código fuente. Esta documentación interactiva permite a los desarrolladores y consumidores de la API probar endpoints directamente desde el navegador, facilitando tanto el desarrollo como la integración.

El framework se integra perfectamente con el ecosistema Python moderno. Utiliza Starlette como base para el manejo de peticiones HTTP, Pydantic para la validación de datos, y es compatible con herramientas populares como SQLAlchemy para bases de datos, Jinja2 para templates, y bibliotecas de autenticación como OAuth2.

from typing import Annotated
from fastapi import FastAPI, Depends
from sqlalchemy.ext.asyncio import AsyncSession
from database import get_db

app = FastAPI(title="Mi API", version="1.0.0")

DbSession = Annotated[AsyncSession, Depends(get_db)]

@app.get("/productos/{producto_id}")
async def obtener_producto(producto_id: int, db: DbSession):
    # Lógica de consulta asíncrona a la base de datos
    return {"id": producto_id, "nombre": "Producto ejemplo"}

Desarrollo de APIs REST

FastAPI facilita la creación de APIs REST completas siguiendo las mejores prácticas de la industria. El framework maneja automáticamente la serialización JSON, códigos de estado HTTP, y cabeceras de respuesta, permitiendo al desarrollador concentrarse en la lógica de negocio.

Los path parameters y query parameters se definen de forma intuitiva utilizando las anotaciones de tipo de Python. FastAPI extrae automáticamente estos parámetros de la URL y los válida según los tipos especificados, generando errores descriptivos cuando los datos no cumplen con los requisitos.

from typing import Annotated
from fastapi import FastAPI, Query

app = FastAPI()

@app.get("/productos/")
async def listar_productos(
    categoria: Annotated[str | None, Query(max_length=40)] = None,
    precio_min: Annotated[float, Query(ge=0)] = 0,
    precio_max: Annotated[float, Query(le=10000)] = 1000,
    limite: Annotated[int, Query(le=100)] = 10,
):
    # Lógica de filtrado y paginación
    return {"productos": [], "total": 0}

Integración con bases de datos

La integración con SQLAlchemy permite crear aplicaciones con persistencia de datos. FastAPI se combina perfectamente con el patrón ORM, facilitando la definición de modelos de datos, relaciones entre tablas, y operaciones CRUD complejas.

Los schemas de Pydantic actúan como una capa de validación entre los modelos de base de datos y las respuestas de la API, asegurando que los datos cumplan con el formato esperado antes de ser enviados al cliente.

from sqlalchemy import String
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column
from pydantic import BaseModel, ConfigDict

class Base(DeclarativeBase):
    pass

class ProductoModel(Base):
    __tablename__ = "productos"
    id: Mapped[int] = mapped_column(primary_key=True)
    nombre: Mapped[str] = mapped_column(String(120))
    precio: Mapped[float]

class ProductoSchema(BaseModel):
    model_config = ConfigDict(from_attributes=True)

    id: int
    nombre: str
    precio: float

Programación asíncrona

La programación asíncrona es fundamental en FastAPI. El framework permite definir funciones asíncronas que pueden manejar operaciones de I/O sin bloquear el hilo principal, mejorando significativamente el rendimiento en aplicaciones que realizan consultas a bases de datos, llamadas a APIs externas, o procesan archivos.

Las background tasks permiten ejecutar tareas pesadas en segundo plano sin afectar el tiempo de respuesta de la API. Esto es especialmente útil para operaciones como envío de emails, procesamiento de imágenes, o generación de reportes.

import asyncio
from contextlib import asynccontextmanager
from fastapi import BackgroundTasks, FastAPI

@asynccontextmanager
async def lifespan(app: FastAPI):
    # Ciclo de arranque: pool de conexiones, caches, consumidores, etc.
    app.state.ready = True
    yield
    # Ciclo de cierre: liberar recursos
    app.state.ready = False

app = FastAPI(lifespan=lifespan)

async def procesar_archivo(nombre_archivo: str) -> None:
    # Simulación de procesamiento pesado no bloqueante
    await asyncio.sleep(10)
    print(f"Archivo {nombre_archivo} procesado")

@app.post("/subir-archivo/")
async def subir_archivo(background_tasks: BackgroundTasks, archivo: str):
    background_tasks.add_task(procesar_archivo, archivo)
    return {"mensaje": "Archivo recibido, procesando en segundo plano"}

Seguridad

FastAPI incluye soporte nativo para OAuth2 y JWT, facilitando la implementación de sistemas de autenticación seguros. El framework maneja automáticamente la validación de tokens, scopes de permisos, y integración con proveedores de identidad externos.

El sistema de dependencias permite crear middleware de seguridad reutilizable que se puede aplicar a endpoints específicos o grupos de rutas, manteniendo el código limpio y organizando las responsabilidades de seguridad de forma clara.

from fastapi import FastAPI, Depends, HTTPException, status
from fastapi.security import HTTPBearer, HTTPAuthorizationCredentials

app = FastAPI()
security = HTTPBearer()

async def verificar_token(credentials: HTTPAuthorizationCredentials = Depends(security)):
    if credentials.credentials != "token-valido":
        raise HTTPException(
            status_code=status.HTTP_401_UNAUTHORIZED,
            detail="Token inválido"
        )
    return credentials.credentials

@app.get("/protegido/")
async def endpoint_protegido(token: str = Depends(verificar_token)):
    return {"mensaje": "Acceso autorizado", "token": token}

Organización

Para aplicaciones grandes, FastAPI ofrece APIRouter que permite organizar endpoints en módulos separados. Esta funcionalidad facilita el mantenimiento del código y permite que equipos de desarrollo trabajen en diferentes partes de la aplicación de forma independiente.

La inyección de dependencias es un patrón fundamental en FastAPI que promueve código testeable y mantenible. Las dependencias pueden ser funciones simples, clases, o incluso otras dependencias, creando un sistema flexible para compartir lógica común entre endpoints.

from typing import Annotated
from fastapi import APIRouter, Depends
from sqlalchemy.ext.asyncio import AsyncSession
from database import get_db
from auth import get_current_user

router = APIRouter(prefix="/api/v1", tags=["productos"])

DbSession = Annotated[AsyncSession, Depends(get_db)]
CurrentUser = Annotated[dict, Depends(get_current_user)]

@router.get("/productos/")
async def listar_productos(db: DbSession, usuario: CurrentUser):
    return {"productos": [], "usuario": usuario["username"]}

FastAPI representa la evolución natural del desarrollo de APIs en Python, combinando las mejores características de frameworks anteriores con las capacidades modernas del lenguaje. Su enfoque en la productividad del desarrollador, el rendimiento, y la calidad del código lo convierte en la elección ideal para proyectos que requieren APIs robustas, escalables y fáciles de mantener.

¿Necesitas un itinerario completo?

Este curso puede formar parte de una carrera profesional que combine varias tecnologías. Explora nuestros itinerarios o te diseñamos uno a medida para tu equipo.

Plan formativo de FastAPI para tu equipo

Recibe una propuesta concreta: modalidad, alcance, calendario y evidencias FUNDAE exportables. Damos de alta a tu equipo, configuramos la plataforma con tus dominios y entregamos certificados verificables e informes para tu entidad organizadora. Sin coste de setup, sin permanencia.

¿Prefieres verlo en directo? Agenda una demo sin compromiso.

Formación en FastAPI: preguntas frecuentes

¿La formación en FastAPI para empresas es bonificable por FUNDAE?
Puede ser bonificable cuando la acción cumple los requisitos aplicables. La plataforma aporta evidencias técnicas: seguimiento de tiempos, registro de conexiones, foros, encuestas y certificados para que tu entidad organizadora o gestoría revise la documentación.
¿En qué modalidades se imparte la formación en FastAPI?
En tres modalidades: teleformación (online asíncrona), aula virtual privada en directo y mixta. Adaptamos temario, calendario y modalidad al equipo.
¿Se adapta el temario de FastAPI al nivel de mi equipo?
Sí. Ajustamos el itinerario de FastAPI al nivel y al stack de tu equipo, con ejercicios evaluados por IA y certificado verificable. La activación corporativa se acuerda durante la fase de propuesta.
¿Cómo se evalúa a los alumnos?
Con ejercicios corregidos automáticamente por IA (test, puzle, código, proyecto y ensayo), detección de entregas generadas con IA y certificados verificables por URL.