How do you define a Pydantic model for FastAPI request body validation?

WHAT IT TESTS: Schema validation via Python type hints. ANSWER OUTLINE: Subclass BaseModel with id int, email str, full_name str|None; pass it as a route param so FastAPI validates JSON and returns 422s. RED FLAG: Saying manual request.json() parsing.
WHAT IT TESTS: Whether you understand that FastAPI leverages Pydantic models and Python type hints to enforce schemas at the edge without boilerplate. ANSWER OUTLINE: First, subclass pydantic.BaseModel and annotate fields with native types; use str | None or Optional[str] for optionality. Second, declare the model as a parameter in the path operation function. FastAPI then reads the annotation, parses the incoming JSON body, validates types and constraints, and injects a populated instance or returns an automatic 422 Unprocessable Entity.
Read the original → fastapi.tiangolo.com
- #python
- #fastapi
- #pydantic
- #validation
- #api-design
Get five bites like this every day.
Tezvyn delivers a daily feed of 60-second tech bites with quizzes to lock in what you learn.