Como FastAPI es en realidad Starlette por debajo, con una capa de varias herramientas encima, puedes usar el objeto Request de Starlette directamente cuando lo necesites.
Esto también significa que si obtienes datos del objeto Request directamente (por ejemplo, leer el body) no serán validados, convertidos ni documentados (con OpenAPI, para la interfaz de usuario automática del API) por FastAPI.
Aunque cualquier otro parámetro declarado normalmente (por ejemplo, el body con un modelo Pydantic) seguiría siendo validado, convertido, anotado, etc.
Pero hay casos específicos en los que es útil obtener el objeto Request.