API con FastAPI

🧑‍🍳 Cocinero⏱️ 30 minutos

📋 Prerequisitos sugeridos

  • Python básico
  • APIs REST

Lo que vas a construir

Una API moderna con FastAPI en Python. Incluye documentacion automatica, validacion de datos con Pydantic, y soporte para async. FastAPI es el framework mas rapido de Python para APIs, ideal para backends de IA y aplicaciones de alto rendimiento.


Instalación

# Con uv
uv init mi-api
cd mi-api
uv add fastapi uvicorn

# O con pip
pip install fastapi uvicorn

Paso 1: Pídele a una IA la API

Necesito una API REST con FastAPI que:
- CRUD completo de items (crear, leer, actualizar, eliminar)
- Validación con Pydantic
- Documentación automática en /docs
- Almacenamiento en memoria (lista)
- Manejo de errores 404
- Tipado completo

Dame el código completo en main.py.

Código típico

from fastapi import FastAPI, HTTPException
from pydantic import BaseModel

app = FastAPI()

class Item(BaseModel):
    id: int
    name: str
    price: float

items: list[Item] = []

@app.get("/items")
def get_items():
    return items

@app.post("/items")
def create_item(item: Item):
    items.append(item)
    return item

@app.get("/items/{item_id}")
def get_item(item_id: int):
    for item in items:
        if item.id == item_id:
            return item
    raise HTTPException(status_code=404, detail="Item not found")

@app.delete("/items/{item_id}")
def delete_item(item_id: int):
    for i, item in enumerate(items):
        if item.id == item_id:
            return items.pop(i)
    raise HTTPException(status_code=404, detail="Item not found")

Ejecutar

uvicorn main:app --reload

Abre http://localhost:8000/docs para ver la documentación interactiva.


Próximo paso

Web Scraper Básico